[INFO] cloning repository https://github.com/scr1ptjunk13/wallet-manager
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/scr1ptjunk13/wallet-manager" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscr1ptjunk13%2Fwallet-manager", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscr1ptjunk13%2Fwallet-manager'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d8d9814cf8d3bb05cba212bd5263975534c40723
[INFO] fixing scr1ptjunk13/wallet-manager against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscr1ptjunk13%2Fwallet-manager" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/scr1ptjunk13/wallet-manager
[INFO] finished tweaking git repo https://github.com/scr1ptjunk13/wallet-manager
[INFO] tweaked toml for git repo https://github.com/scr1ptjunk13/wallet-manager written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/scr1ptjunk13/wallet-manager on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/scr1ptjunk13/wallet-manager already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tokio-test v0.4.4
[INFO] [stderr]   Downloaded tempfile v3.20.0
[INFO] [stderr]   Downloaded hdwallet v0.4.1
[INFO] [stderr]   Downloaded secp256k1 v0.26.0
[INFO] [stderr]   Downloaded bip39 v2.2.0
[INFO] [stderr]   Downloaded alloy-sol-macro v1.2.1
[INFO] [stderr]   Downloaded alloy-sol-types v1.2.1
[INFO] [stderr]   Downloaded alloy-sol-macro-input v1.2.1
[INFO] [stderr]   Downloaded const-hex v1.14.1
[INFO] [stderr]   Downloaded alloy-sol-type-parser v1.2.1
[INFO] [stderr]   Downloaded alloy-json-abi v1.2.1
[INFO] [stderr]   Downloaded syn-solidity v1.2.1
[INFO] [stderr]   Downloaded alloy-primitives v1.2.1
[INFO] [stderr]   Downloaded ruint v1.15.0
[INFO] [stderr]   Downloaded winnow v0.7.11
[INFO] [stderr]   Downloaded alloy-signer v1.0.20
[INFO] [stderr]   Downloaded alloy-serde v1.0.20
[INFO] [stderr]   Downloaded alloy-network-primitives v1.0.20
[INFO] [stderr]   Downloaded alloy-sol-macro v0.3.2
[INFO] [stderr]   Downloaded syn-solidity v0.3.2
[INFO] [stderr]   Downloaded alloy-signer-local v1.0.20
[INFO] [stderr]   Downloaded alloy-network v1.0.20
[INFO] [stderr]   Downloaded alloy-eip2930 v0.2.1
[INFO] [stderr]   Downloaded alloy-sol-macro-expander v1.2.1
[INFO] [stderr]   Downloaded alloy-eip7702 v0.6.1
[INFO] [stderr]   Downloaded alloy-eip2124 v0.2.0
[INFO] [stderr]   Downloaded alloy-rpc-types-eth v1.0.20
[INFO] [stderr]   Downloaded dyn-clone v1.0.19
[INFO] [stderr]   Downloaded bitcoin-io v0.1.3
[INFO] [stderr]   Downloaded alloy-consensus v1.0.20
[INFO] [stderr]   Downloaded alloy-rpc-types-any v1.0.20
[INFO] [stderr]   Downloaded hex-conservative v0.2.1
[INFO] [stderr]   Downloaded alloy-tx-macros v1.0.20
[INFO] [stderr]   Downloaded alloy-consensus-any v1.0.20
[INFO] [stderr]   Downloaded alloy-rpc-types-anvil v1.0.20
[INFO] [stderr]   Downloaded bitcoin_hashes v0.14.0
[INFO] [stderr]   Downloaded alloy-trie v0.9.0
[INFO] [stderr]   Downloaded nybbles v0.4.1
[INFO] [stderr]   Downloaded alloy-json-rpc v1.0.20
[INFO] [stderr]   Downloaded alloy-rpc-types v1.0.20
[INFO] [stderr]   Downloaded alloy-rpc-types-txpool v1.0.20
[INFO] [stderr]   Downloaded alloy-rpc-types-engine v1.0.20
[INFO] [stderr]   Downloaded pem v3.0.5
[INFO] [stderr]   Downloaded wasmtimer v0.4.2
[INFO] [stderr]   Downloaded lru v0.13.0
[INFO] [stderr]   Downloaded alloy-transport-ws v1.0.20
[INFO] [stderr]   Downloaded secp256k1 v0.30.0
[INFO] [stderr]   Downloaded alloy-rpc-types-trace v1.0.20
[INFO] [stderr]   Downloaded tokio-tungstenite v0.26.2
[INFO] [stderr]   Downloaded hyper-util v0.1.15
[INFO] [stderr]   Downloaded alloy-transport-ipc v1.0.20
[INFO] [stderr]   Downloaded alloy-rpc-types-debug v1.0.20
[INFO] [stderr]   Downloaded alloy-transport v1.0.20
[INFO] [stderr]   Downloaded alloy-pubsub v1.0.20
[INFO] [stderr]   Downloaded tungstenite v0.26.2
[INFO] [stderr]   Downloaded alloy-eips v1.0.20
[INFO] [stderr]   Downloaded alloy-provider v1.0.20
[INFO] [stderr]   Downloaded alloy-core v1.2.1
[INFO] [stderr]   Downloaded alloy-transport-http v1.0.20
[INFO] [stderr]   Downloaded alloy-rpc-client v1.0.20
[INFO] [stderr]   Downloaded alloy-chains v0.2.5
[INFO] [stderr]   Downloaded reqwest v0.12.22
[INFO] [stderr]   Downloaded alloy-contract v1.0.20
[INFO] [stderr]   Downloaded alloy v1.0.20
[INFO] [stderr]   Downloaded alloy-dyn-abi v1.2.1
[INFO] [stderr]   Downloaded webpki-roots v1.0.1
[INFO] [stderr]   Downloaded rustls v0.23.29
[INFO] [stderr]   Downloaded alloy-genesis v1.0.20
[INFO] [stderr]   Downloaded c-kzg v2.1.1
[INFO] [stderr]   Downloaded secp256k1-sys v0.8.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015
[INFO] running `Command { std: "docker" "start" "7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]     Checking cfg-if v1.0.1
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cc v1.2.29
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling ruint-macro v1.2.1
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling winnow v0.7.11
[INFO] [stderr]     Checking slab v0.4.10
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]     Checking crc v3.3.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling blst v0.3.15
[INFO] [stderr]    Compiling c-kzg v2.1.1
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking bitflags v2.9.1
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking futures-utils-wasm v0.1.0
[INFO] [stderr]    Compiling rustls v0.23.29
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]    Compiling rustversion v1.0.21
[INFO] [stderr]     Checking bimap v0.6.3
[INFO] [stderr]     Checking data-encoding v2.9.0
[INFO] [stderr]     Checking iri-string v0.7.8
[INFO] [stderr]    Compiling doctest-file v1.0.0
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling secp256k1-sys v0.8.2
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling bitcoin-internals v0.2.0
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling secp256k1-sys v0.9.2
[INFO] [stderr]     Checking tinyvec v1.9.0
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]     Checking untrusted v0.7.1
[INFO] [stderr]     Checking hex-conservative v0.1.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking base64ct v1.8.0
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand v0.9.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling macro-string v0.1.4
[INFO] [stderr]    Compiling syn-solidity v1.2.1
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]    Compiling syn-solidity v0.3.2
[INFO] [stderr]     Checking secp256k1 v0.26.0
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling alloy-rlp-derive v0.3.12
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking thiserror v2.0.12
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling auto_impl v1.3.0
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking rustls-pki-types v1.12.0
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking rustls-webpki v0.103.4
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking webpki-roots v1.0.1
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling num_enum_derive v0.7.4
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]    Compiling strum_macros v0.27.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking serdect v0.2.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking const-hex v1.14.1
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking alloy-rlp v0.3.12
[INFO] [stderr]    Compiling ruint v1.15.0
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]    Compiling alloy-sol-type-parser v1.2.1
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking tokio v1.46.1
[INFO] [stderr]     Checking k256 v0.13.4
[INFO] [stderr]    Compiling alloy-primitives v1.2.1
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking nybbles v0.4.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking tungstenite v0.26.2
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling alloy-json-abi v1.2.1
[INFO] [stderr]     Checking alloy-eip2930 v0.2.1
[INFO] [stderr]     Checking alloy-eip7702 v0.6.1
[INFO] [stderr]     Checking alloy-serde v1.0.20
[INFO] [stderr]     Checking alloy-eip2124 v0.2.0
[INFO] [stderr]    Compiling alloy-tx-macros v1.0.20
[INFO] [stderr]     Checking alloy-trie v0.9.0
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking alloy-signer v1.0.20
[INFO] [stderr]     Checking alloy-eips v1.0.20
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]    Compiling alloy-sol-macro-input v1.2.1
[INFO] [stderr]     Checking tracing-futures v0.2.5
[INFO] [stderr]     Checking strum v0.27.1
[INFO] [stderr]     Checking num_enum v0.7.4
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking alloy-chains v0.2.5
[INFO] [stderr]     Checking alloy-rpc-types-debug v1.0.20
[INFO] [stderr]    Compiling alloy-sol-macro-expander v1.2.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking lru v0.13.0
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking unicode-normalization v0.1.24
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking bitcoin_hashes v0.13.0
[INFO] [stderr]     Checking rustls-pemfile v1.0.4
[INFO] [stderr]     Checking alloy-consensus v1.0.20
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]     Checking iana-time-zone v0.1.63
[INFO] [stderr]     Checking webpki-roots v0.25.4
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking tokio-rustls v0.26.2
[INFO] [stderr]     Checking interprocess v2.2.3
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking tokio-tungstenite v0.26.2
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking hyper-util v0.1.15
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]    Compiling alloy-sol-macro v0.3.2
[INFO] [stderr]     Checking hdwallet v0.4.1
[INFO] [stderr]     Checking bip39 v2.2.0
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking alloy-consensus-any v1.0.20
[INFO] [stderr]     Checking alloy-network-primitives v1.0.20
[INFO] [stderr]     Checking anyhow v1.0.98
[INFO] [stderr]     Checking secp256k1 v0.28.2
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking uuid v1.17.0
[INFO] [stderr]     Checking reqwest v0.12.22
[INFO] [stderr]     Checking tokio-test v0.4.4
[INFO] [stderr]    Compiling alloy-sol-macro v1.2.1
[INFO] [stderr]     Checking tempfile v3.20.0
[INFO] [stderr]     Checking alloy-sol-types v1.2.1
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking alloy-json-rpc v1.0.20
[INFO] [stderr]     Checking alloy-rpc-types-eth v1.0.20
[INFO] [stderr]     Checking alloy-dyn-abi v1.2.1
[INFO] [stderr]     Checking alloy-transport v1.0.20
[INFO] [stderr]     Checking alloy-core v1.2.1
[INFO] [stderr]     Checking alloy-pubsub v1.0.20
[INFO] [stderr]     Checking alloy-transport-http v1.0.20
[INFO] [stderr]     Checking alloy-transport-ipc v1.0.20
[INFO] [stderr]     Checking alloy-transport-ws v1.0.20
[INFO] [stderr]     Checking alloy-rpc-client v1.0.20
[INFO] [stderr]     Checking alloy-rpc-types-any v1.0.20
[INFO] [stderr]     Checking alloy-rpc-types-txpool v1.0.20
[INFO] [stderr]     Checking alloy-rpc-types-trace v1.0.20
[INFO] [stderr]     Checking alloy-rpc-types-anvil v1.0.20
[INFO] [stderr]     Checking alloy-network v1.0.20
[INFO] [stderr]     Checking alloy-signer-local v1.0.20
[INFO] [stderr]     Checking alloy-provider v1.0.20
[INFO] [stderr]     Checking alloy-rpc-types v1.0.20
[INFO] [stderr]     Checking alloy-contract v1.0.20
[INFO] [stderr]     Checking alloy v1.0.20
[INFO] [stderr]     Checking wallet-manager v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0761]: file for module `mixer` found at both "src/funding/mixer.rs" and "src/funding/mixer/mod.rs"
[INFO] [stdout]  --> src/funding/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub mod mixer;
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: delete or rename one of them to remove the ambiguity
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0761]: file for module `mixer` found at both "src/funding/mixer.rs" and "src/funding/mixer/mod.rs"
[INFO] [stdout]  --> src/funding/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub mod mixer;
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: delete or rename one of them to remove the ambiguity
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/activity/simulator.rs:163:45
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let choice = rand::thread_rng().gen::<f32>();
[INFO] [stdout]     |                                             ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let choice = rand::thread_rng().r#gen::<f32>();
[INFO] [stdout]     |                                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/activity/simulator.rs:163:45
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let choice = rand::thread_rng().gen::<f32>();
[INFO] [stdout]     |                                             ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let choice = rand::thread_rng().r#gen::<f32>();
[INFO] [stdout]     |                                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `FundingRequest` is defined multiple times
[INFO] [stdout]    --> src/types.rs:210:1
[INFO] [stdout]     |
[INFO] [stdout]  77 | pub struct FundingRequest {
[INFO] [stdout]     | ------------------------- previous definition of the type `FundingRequest` here
[INFO] [stdout] ...
[INFO] [stdout] 210 | pub struct FundingRequest {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ `FundingRequest` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FundingRequest` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `FundingSource` is defined multiple times
[INFO] [stdout]    --> src/types.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout]  43 | pub enum FundingSource {
[INFO] [stdout]     | ---------------------- previous definition of the type `FundingSource` here
[INFO] [stdout] ...
[INFO] [stdout] 256 | pub enum FundingSource {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^ `FundingSource` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FundingSource` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `FundingPriority` is defined multiple times
[INFO] [stdout]    --> src/types.rs:281:1
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ previous definition of the type `FundingPriority` here
[INFO] [stdout] ...
[INFO] [stdout] 281 | pub enum FundingPriority {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^ `FundingPriority` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FundingPriority` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `FundingRequest` is defined multiple times
[INFO] [stdout]    --> src/types.rs:210:1
[INFO] [stdout]     |
[INFO] [stdout]  77 | pub struct FundingRequest {
[INFO] [stdout]     | ------------------------- previous definition of the type `FundingRequest` here
[INFO] [stdout] ...
[INFO] [stdout] 210 | pub struct FundingRequest {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^ `FundingRequest` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FundingRequest` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `FundingSource` is defined multiple times
[INFO] [stdout]    --> src/types.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout]  43 | pub enum FundingSource {
[INFO] [stdout]     | ---------------------- previous definition of the type `FundingSource` here
[INFO] [stdout] ...
[INFO] [stdout] 256 | pub enum FundingSource {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^ `FundingSource` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FundingSource` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `FundingPriority` is defined multiple times
[INFO] [stdout]    --> src/types.rs:281:1
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ previous definition of the type `FundingPriority` here
[INFO] [stdout] ...
[INFO] [stdout] 281 | pub enum FundingPriority {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^ `FundingPriority` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FundingPriority` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unknown `sol` attribute
[INFO] [stdout]   --> src/activity/simulator.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 |     #[sol(rpc)]
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/activity/simulator.rs:167:98
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     content: format!("Excited about the airdrop! #crypto {}", rand::thread_rng().gen::<u32>()),
[INFO] [stdout]     |                                                                                                  ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     content: format!("Excited about the airdrop! #crypto {}", rand::thread_rng().r#gen::<u32>()),
[INFO] [stdout]     |                                                                                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/activity/simulator.rs:184:95
[INFO] [stdout]     |
[INFO] [stdout] 184 |                     text: format!("Just joined the latest #airdrop! 🚀 {}", rand::thread_rng().gen::<u32>()),
[INFO] [stdout]     |                                                                                                ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 184 |                     text: format!("Just joined the latest #airdrop! 🚀 {}", rand::thread_rng().r#gen::<u32>()),
[INFO] [stdout]     |                                                                                                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unknown `sol` attribute
[INFO] [stdout]   --> src/activity/simulator.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 |     #[sol(rpc)]
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/activity/simulator.rs:167:98
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     content: format!("Excited about the airdrop! #crypto {}", rand::thread_rng().gen::<u32>()),
[INFO] [stdout]     |                                                                                                  ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     content: format!("Excited about the airdrop! #crypto {}", rand::thread_rng().r#gen::<u32>()),
[INFO] [stdout]     |                                                                                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found reserved keyword `gen`
[INFO] [stdout]    --> src/activity/simulator.rs:184:95
[INFO] [stdout]     |
[INFO] [stdout] 184 |                     text: format!("Just joined the latest #airdrop! 🚀 {}", rand::thread_rng().gen::<u32>()),
[INFO] [stdout]     |                                                                                                ^^^ expected identifier, found reserved keyword
[INFO] [stdout]     |
[INFO] [stdout] help: escape `gen` to use it as an identifier
[INFO] [stdout]     |
[INFO] [stdout] 184 |                     text: format!("Just joined the latest #airdrop! 🚀 {}", rand::thread_rng().r#gen::<u32>()),
[INFO] [stdout]     |                                                                                                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `super::ProxyManager`
[INFO] [stdout]  --> src/network/test.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use super::ProxyManager;
[INFO] [stdout]   |         ^^^^^^^------------
[INFO] [stdout]   |                |
[INFO] [stdout]   |                no `ProxyManager` in `network::test`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]   |
[INFO] [stdout] 4 -     use super::ProxyManager;
[INFO] [stdout] 4 +     use crate::ProxyManager;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `CrossChainTransferRecord` in this scope
[INFO] [stdout]   --> src/funding/cross_chain.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     transfer_history: Vec<CrossChainTransferRecord>,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct CrossChainFunding<CrossChainTransferRecord> {
[INFO] [stdout]    |                             ++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeTransferRequest` in this scope
[INFO] [stdout]   --> src/funding/cross_chain.rs:78:30
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let bridge_request = BridgeTransferRequest {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `CrossChainTransferRecord` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:117:31
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let transfer_record = CrossChainTransferRecord {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |     ) -> Result<BridgeRoute, WalletError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<BridgeRoute> CrossChainFunding {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let route_request = RouteRequest {
[INFO] [stdout]     |                             ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `CrossChainTransferRecord` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:179:73
[INFO] [stdout]     |
[INFO] [stdout] 179 |     pub fn get_transfer_history(&self, wallet_id: Option<Uuid>) -> Vec<&CrossChainTransferRecord> {
[INFO] [stdout]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<CrossChainTransferRecord> CrossChainFunding {
[INFO] [stdout]     |     ++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeStats` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:193:55
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_bridge_stats(&self) -> HashMap<String, BridgeStats> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<BridgeStats> CrossChainFunding {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `CrossChainTransferRecord` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:197:40
[INFO] [stdout]     |
[INFO] [stdout] 197 |             let bridge_transfers: Vec<&CrossChainTransferRecord> = self.transfer_history.iter()
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<CrossChainTransferRecord> CrossChainFunding {
[INFO] [stdout]     |     ++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeStats` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:222:47
[INFO] [stdout]     |
[INFO] [stdout] 222 |             stats.insert(bridge_name.clone(), BridgeStats {
[INFO] [stdout]     |                                               ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:262:90
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub async fn get_transfer_quote(&self, request: &CrossChainFundingRequest) -> Result<TransferQuote, WalletError> {
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<TransferQuote> CrossChainFunding {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:266:29
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let quote_request = QuoteRequest {
[INFO] [stdout]     |                             ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:303:47
[INFO] [stdout]     |
[INFO] [stdout] 303 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:303:80
[INFO] [stdout]     |
[INFO] [stdout] 303 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub trait BridgeConnector<TransferResult>: Send + Sync {
[INFO] [stdout]     |                          ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:304:48
[INFO] [stdout]     |
[INFO] [stdout] 304 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:304:72
[INFO] [stdout]     |
[INFO] [stdout] 304 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub trait BridgeConnector<BridgeRoute>: Send + Sync {
[INFO] [stdout]     |                          +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:305:40
[INFO] [stdout]     |
[INFO] [stdout] 305 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:305:64
[INFO] [stdout]     |
[INFO] [stdout] 305 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub trait BridgeConnector<TransferQuote>: Send + Sync {
[INFO] [stdout]     |                          +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:327:47
[INFO] [stdout]     |
[INFO] [stdout] 327 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:327:80
[INFO] [stdout]     |
[INFO] [stdout] 327 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl<TransferResult> BridgeConnector for AcrossBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:330:12
[INFO] [stdout]     |
[INFO] [stdout] 330 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:337:48
[INFO] [stdout]     |
[INFO] [stdout] 337 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:337:72
[INFO] [stdout]     |
[INFO] [stdout] 337 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl<BridgeRoute> BridgeConnector for AcrossBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:339:12
[INFO] [stdout]     |
[INFO] [stdout] 339 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:347:40
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:347:64
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl<TransferQuote> BridgeConnector for AcrossBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:348:12
[INFO] [stdout]     |
[INFO] [stdout] 348 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:386:47
[INFO] [stdout]     |
[INFO] [stdout] 386 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:386:80
[INFO] [stdout]     |
[INFO] [stdout] 386 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 385 | impl<TransferResult> BridgeConnector for HopBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:388:12
[INFO] [stdout]     |
[INFO] [stdout] 388 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:395:48
[INFO] [stdout]     |
[INFO] [stdout] 395 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:395:72
[INFO] [stdout]     |
[INFO] [stdout] 395 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 385 | impl<BridgeRoute> BridgeConnector for HopBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:396:12
[INFO] [stdout]     |
[INFO] [stdout] 396 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:404:40
[INFO] [stdout]     |
[INFO] [stdout] 404 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:404:64
[INFO] [stdout]     |
[INFO] [stdout] 404 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 385 | impl<TransferQuote> BridgeConnector for HopBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:405:12
[INFO] [stdout]     |
[INFO] [stdout] 405 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:442:47
[INFO] [stdout]     |
[INFO] [stdout] 442 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:442:80
[INFO] [stdout]     |
[INFO] [stdout] 442 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 441 | impl<TransferResult> BridgeConnector for StargateBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:443:12
[INFO] [stdout]     |
[INFO] [stdout] 443 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:450:48
[INFO] [stdout]     |
[INFO] [stdout] 450 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:450:72
[INFO] [stdout]     |
[INFO] [stdout] 450 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 441 | impl<BridgeRoute> BridgeConnector for StargateBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:451:12
[INFO] [stdout]     |
[INFO] [stdout] 451 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:459:40
[INFO] [stdout]     |
[INFO] [stdout] 459 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:459:64
[INFO] [stdout]     |
[INFO] [stdout] 459 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 441 | impl<TransferQuote> BridgeConnector for StargateBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:460:12
[INFO] [stdout]     |
[INFO] [stdout] 460 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:499:47
[INFO] [stdout]     |
[INFO] [stdout] 499 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:499:80
[INFO] [stdout]     |
[INFO] [stdout] 499 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 498 | impl<TransferResult> BridgeConnector for SynapseBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:500:12
[INFO] [stdout]     |
[INFO] [stdout] 500 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:507:48
[INFO] [stdout]     |
[INFO] [stdout] 507 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:507:72
[INFO] [stdout]     |
[INFO] [stdout] 507 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 498 | impl<BridgeRoute> BridgeConnector for SynapseBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:508:12
[INFO] [stdout]     |
[INFO] [stdout] 508 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:516:40
[INFO] [stdout]     |
[INFO] [stdout] 516 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:516:64
[INFO] [stdout]     |
[INFO] [stdout] 516 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 498 | impl<TransferQuote> BridgeConnector for SynapseBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:517:12
[INFO] [stdout]     |
[INFO] [stdout] 517 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:555:47
[INFO] [stdout]     |
[INFO] [stdout] 555 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:555:80
[INFO] [stdout]     |
[INFO] [stdout] 555 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl<TransferResult> BridgeConnector for CBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:556:12
[INFO] [stdout]     |
[INFO] [stdout] 556 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:563:48
[INFO] [stdout]     |
[INFO] [stdout] 563 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:563:72
[INFO] [stdout]     |
[INFO] [stdout] 563 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl<BridgeRoute> BridgeConnector for CBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:564:12
[INFO] [stdout]     |
[INFO] [stdout] 564 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:572:40
[INFO] [stdout]     |
[INFO] [stdout] 572 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:572:64
[INFO] [stdout]     |
[INFO] [stdout] 572 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl<TransferQuote> BridgeConnector for CBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:573:12
[INFO] [stdout]     |
[INFO] [stdout] 573 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `CrossChainConfig` is private
[INFO] [stdout]    --> src/funding/mod.rs:387:42
[INFO] [stdout]     |
[INFO] [stdout] 387 |     pub cross_chain_config: cross_chain::CrossChainConfig,
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `CrossChainConfig` is defined here...
[INFO] [stdout]    --> src/funding/cross_chain.rs:2:5
[INFO] [stdout]     |
[INFO] [stdout]   2 | use crate::types::*;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `CrossChainConfig` which is defined here
[INFO] [stdout]    --> src/types.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct CrossChainConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout] 387 -     pub cross_chain_config: cross_chain::CrossChainConfig,
[INFO] [stdout] 387 +     pub cross_chain_config: crate::CrossChainConfig,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `CrossChainConfig` is private
[INFO] [stdout]    --> src/funding/mod.rs:398:46
[INFO] [stdout]     |
[INFO] [stdout] 398 |             cross_chain_config: cross_chain::CrossChainConfig::default(),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `CrossChainConfig` is defined here...
[INFO] [stdout]    --> src/funding/cross_chain.rs:2:5
[INFO] [stdout]     |
[INFO] [stdout]   2 | use crate::types::*;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `CrossChainConfig` which is defined here
[INFO] [stdout]    --> src/types.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct CrossChainConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout] 398 -             cross_chain_config: cross_chain::CrossChainConfig::default(),
[INFO] [stdout] 398 +             cross_chain_config: crate::CrossChainConfig::default(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/funding/cex.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/funding/cross_chain.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::WalletError`
[INFO] [stdout]  --> src/balance/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::error::WalletError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/balance/mod.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PasswordHash` and `PasswordVerifier`
[INFO] [stdout]  --> src/security/encryption.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use argon2::{Argon2, PasswordHash, PasswordHasher, PasswordVerifier, password_hash::SaltString};
[INFO] [stdout]   |                      ^^^^^^^^^^^^                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::RwLock`
[INFO] [stdout]  --> src/security/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::RwLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContractInstance` and `Interface`
[INFO] [stdout]  --> src/activity/simulator.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use alloy_contract::{ContractInstance, Interface};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::Client`
[INFO] [stdout]   --> src/activity/simulator.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use reqwest::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `std::fmt::Debug` for type `types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:209:10
[INFO] [stdout]     |
[INFO] [stdout]  76 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |          ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 209 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ conflicting implementation for `types::FundingRequest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `std::fmt::Debug` for type `types::FundingSource`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |          ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ conflicting implementation for `types::FundingSource`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `std::fmt::Debug` for type `types::FundingPriority`
[INFO] [stdout]    --> src/types.rs:280:10
[INFO] [stdout]     |
[INFO] [stdout]  85 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |          ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ conflicting implementation for `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Clone` for type `types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:209:17
[INFO] [stdout]     |
[INFO] [stdout]  76 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                 ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 209 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ conflicting implementation for `types::FundingRequest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Clone` for type `types::FundingSource`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout]  42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                 ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ conflicting implementation for `types::FundingSource`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Clone` for type `types::FundingPriority`
[INFO] [stdout]    --> src/types.rs:280:17
[INFO] [stdout]     |
[INFO] [stdout]  85 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                 ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ conflicting implementation for `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]   --> src/generator/mod.rs:68:39
[INFO] [stdout]    |
[INFO] [stdout] 68 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum WalletError {
[INFO] [stdout]    | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]   --> src/generator/mod.rs:75:39
[INFO] [stdout]    |
[INFO] [stdout] 75 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum WalletError {
[INFO] [stdout]    | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `hdwallet::ChainPath<'_>: std::str::FromStr` is not satisfied
[INFO] [stdout]   --> src/generator/mod.rs:79:72
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let derived_key = key_chain.derive_private_key(derivation_path.parse().unwrap())
[INFO] [stdout]    |                                                                        ^^^^^ the trait `std::str::FromStr` is not implemented for `hdwallet::ChainPath<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `std::str::FromStr`:
[INFO] [stdout]              Address
[INFO] [stdout]              AssociatedData
[INFO] [stdout]              Bits<BITS, LIMBS>
[INFO] [stdout]              BlockId
[INFO] [stdout]              BlockNumberOrTag
[INFO] [stdout]              Bloom
[INFO] [stdout]              Braced
[INFO] [stdout]              ByteString
[INFO] [stdout]            and 178 others
[INFO] [stdout] note: required by a bound in `core::str::<impl str>::parse`
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/str/mod.rs:2780:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]   --> src/generator/mod.rs:80:39
[INFO] [stdout]    |
[INFO] [stdout] 80 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum WalletError {
[INFO] [stdout]    | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/generator/mod.rs:143:37
[INFO] [stdout]     |
[INFO] [stdout] 143 |             return Err(WalletError::HealthCheck("Invalid address format".to_string()));
[INFO] [stdout]     |                                     ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cex.rs:30:63
[INFO] [stdout]    |
[INFO] [stdout] 30 |               exchanges.insert("coinbase".to_string(), Box::new(CoinbaseConnector::new(
[INFO] [stdout]    |  _______________________________________________________________^
[INFO] [stdout] 31 | |                 config.coinbase_api_key.clone(),
[INFO] [stdout] 32 | |                 config.coinbase_secret.clone(),
[INFO] [stdout] 33 | |             )?));
[INFO] [stdout]    | |______________^ expected `BinanceConnector`, found `CoinbaseConnector`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `CoinbaseConnector` to `BinanceConnector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cex.rs:37:58
[INFO] [stdout]    |
[INFO] [stdout] 37 |               exchanges.insert("okx".to_string(), Box::new(OkxConnector::new(
[INFO] [stdout]    |  __________________________________________________________^
[INFO] [stdout] 38 | |                 config.okx_api_key.clone(),
[INFO] [stdout] 39 | |                 config.okx_secret.clone(),
[INFO] [stdout] 40 | |                 config.okx_passphrase.clone(),
[INFO] [stdout] 41 | |             )?));
[INFO] [stdout]    | |______________^ expected `BinanceConnector`, found `OkxConnector`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `OkxConnector` to `BinanceConnector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/funding/cex.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |               exchanges.insert("binance".to_string(), Box::new(BinanceConnector::new(
[INFO] [stdout]    |  _____________---------_______________________________-
[INFO] [stdout]    | |             |
[INFO] [stdout]    | |             ... which causes `exchanges` to have type `HashMap<std::string::String, Box<BinanceConnector>>`
[INFO] [stdout] 24 | |                 config.binance_api_key.clone(),
[INFO] [stdout] 25 | |                 config.binance_secret.clone(),
[INFO] [stdout] 26 | |             )?));
[INFO] [stdout]    | |_______________- this argument has type `Box<BinanceConnector>`...
[INFO] [stdout] ...
[INFO] [stdout] 46 |               exchanges,
[INFO] [stdout]    |               ^^^^^^^^^ expected `HashMap<String, Box<...>>`, found `HashMap<String, Box<BinanceConnector>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `HashMap<_, Box<(dyn ExchangeConnector + 'static)>>`
[INFO] [stdout]               found struct `HashMap<_, Box<BinanceConnector>>`
[INFO] [stdout]    = help: `BinanceConnector` implements `ExchangeConnector` so you could box the found value and coerce it to the trait object `Box<dyn ExchangeConnector>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Staged` found for enum `types::WithdrawMethod` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:80:29
[INFO] [stdout]     |
[INFO] [stdout]  80 |             WithdrawMethod::Staged => {
[INFO] [stdout]     |                             ^^^^^^ variant, associated function, or constant not found in `types::WithdrawMethod`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:365:1
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub enum WithdrawMethod {
[INFO] [stdout]     | ----------------------- variant, associated function, or constant `Staged` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Randomized` found for enum `types::WithdrawMethod` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:83:29
[INFO] [stdout]     |
[INFO] [stdout]  83 |             WithdrawMethod::Randomized => {
[INFO] [stdout]     |                             ^^^^^^^^^^ variant, associated function, or constant not found in `types::WithdrawMethod`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:365:1
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub enum WithdrawMethod {
[INFO] [stdout]     | ----------------------- variant, associated function, or constant `Randomized` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `CrossChainTransferRecord` in this scope
[INFO] [stdout]   --> src/funding/cross_chain.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     transfer_history: Vec<CrossChainTransferRecord>,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct CrossChainFunding<CrossChainTransferRecord> {
[INFO] [stdout]    |                             ++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeTransferRequest` in this scope
[INFO] [stdout]   --> src/funding/cross_chain.rs:78:30
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let bridge_request = BridgeTransferRequest {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `CrossChainTransferRecord` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:117:31
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let transfer_record = CrossChainTransferRecord {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |     ) -> Result<BridgeRoute, WalletError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<BridgeRoute> CrossChainFunding {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let route_request = RouteRequest {
[INFO] [stdout]     |                             ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/cex.rs:103:29
[INFO] [stdout]     |
[INFO] [stdout] 103 |             funding_source: FundingSource::Cex(request.clone()),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 103 -             funding_source: FundingSource::Cex(request.clone()),
[INFO] [stdout] 103 +             funding_source: FundingSource::Cex { exchange: /* value */, withdrawal_address: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `CrossChainTransferRecord` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:179:73
[INFO] [stdout]     |
[INFO] [stdout] 179 |     pub fn get_transfer_history(&self, wallet_id: Option<Uuid>) -> Vec<&CrossChainTransferRecord> {
[INFO] [stdout]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<CrossChainTransferRecord> CrossChainFunding {
[INFO] [stdout]     |     ++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeStats` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:193:55
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_bridge_stats(&self) -> HashMap<String, BridgeStats> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<BridgeStats> CrossChainFunding {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `CrossChainTransferRecord` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:197:40
[INFO] [stdout]     |
[INFO] [stdout] 197 |             let bridge_transfers: Vec<&CrossChainTransferRecord> = self.transfer_history.iter()
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<CrossChainTransferRecord> CrossChainFunding {
[INFO] [stdout]     |     ++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeStats` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:222:47
[INFO] [stdout]     |
[INFO] [stdout] 222 |             stats.insert(bridge_name.clone(), BridgeStats {
[INFO] [stdout]     |                                               ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:262:90
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub async fn get_transfer_quote(&self, request: &CrossChainFundingRequest) -> Result<TransferQuote, WalletError> {
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl<TransferQuote> CrossChainFunding {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:266:29
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let quote_request = QuoteRequest {
[INFO] [stdout]     |                             ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:303:47
[INFO] [stdout]     |
[INFO] [stdout] 303 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:303:80
[INFO] [stdout]     |
[INFO] [stdout] 303 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub trait BridgeConnector<TransferResult>: Send + Sync {
[INFO] [stdout]     |                          ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:304:48
[INFO] [stdout]     |
[INFO] [stdout] 304 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:304:72
[INFO] [stdout]     |
[INFO] [stdout] 304 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub trait BridgeConnector<BridgeRoute>: Send + Sync {
[INFO] [stdout]     |                          +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:305:40
[INFO] [stdout]     |
[INFO] [stdout] 305 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:305:64
[INFO] [stdout]     |
[INFO] [stdout] 305 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub trait BridgeConnector<TransferQuote>: Send + Sync {
[INFO] [stdout]     |                          +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:327:47
[INFO] [stdout]     |
[INFO] [stdout] 327 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:327:80
[INFO] [stdout]     |
[INFO] [stdout] 327 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl<TransferResult> BridgeConnector for AcrossBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:330:12
[INFO] [stdout]     |
[INFO] [stdout] 330 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:337:48
[INFO] [stdout]     |
[INFO] [stdout] 337 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:337:72
[INFO] [stdout]     |
[INFO] [stdout] 337 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl<BridgeRoute> BridgeConnector for AcrossBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:339:12
[INFO] [stdout]     |
[INFO] [stdout] 339 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:347:40
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:347:64
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl<TransferQuote> BridgeConnector for AcrossBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:348:12
[INFO] [stdout]     |
[INFO] [stdout] 348 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:386:47
[INFO] [stdout]     |
[INFO] [stdout] 386 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:386:80
[INFO] [stdout]     |
[INFO] [stdout] 386 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 385 | impl<TransferResult> BridgeConnector for HopBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:388:12
[INFO] [stdout]     |
[INFO] [stdout] 388 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:395:48
[INFO] [stdout]     |
[INFO] [stdout] 395 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:395:72
[INFO] [stdout]     |
[INFO] [stdout] 395 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 385 | impl<BridgeRoute> BridgeConnector for HopBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:396:12
[INFO] [stdout]     |
[INFO] [stdout] 396 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:404:40
[INFO] [stdout]     |
[INFO] [stdout] 404 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:404:64
[INFO] [stdout]     |
[INFO] [stdout] 404 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 385 | impl<TransferQuote> BridgeConnector for HopBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:405:12
[INFO] [stdout]     |
[INFO] [stdout] 405 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:442:47
[INFO] [stdout]     |
[INFO] [stdout] 442 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:442:80
[INFO] [stdout]     |
[INFO] [stdout] 442 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 441 | impl<TransferResult> BridgeConnector for StargateBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:443:12
[INFO] [stdout]     |
[INFO] [stdout] 443 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:450:48
[INFO] [stdout]     |
[INFO] [stdout] 450 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:450:72
[INFO] [stdout]     |
[INFO] [stdout] 450 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 441 | impl<BridgeRoute> BridgeConnector for StargateBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:451:12
[INFO] [stdout]     |
[INFO] [stdout] 451 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:459:40
[INFO] [stdout]     |
[INFO] [stdout] 459 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:459:64
[INFO] [stdout]     |
[INFO] [stdout] 459 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 441 | impl<TransferQuote> BridgeConnector for StargateBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:460:12
[INFO] [stdout]     |
[INFO] [stdout] 460 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:499:47
[INFO] [stdout]     |
[INFO] [stdout] 499 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:499:80
[INFO] [stdout]     |
[INFO] [stdout] 499 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 498 | impl<TransferResult> BridgeConnector for SynapseBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:500:12
[INFO] [stdout]     |
[INFO] [stdout] 500 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:507:48
[INFO] [stdout]     |
[INFO] [stdout] 507 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:507:72
[INFO] [stdout]     |
[INFO] [stdout] 507 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 498 | impl<BridgeRoute> BridgeConnector for SynapseBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:508:12
[INFO] [stdout]     |
[INFO] [stdout] 508 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:516:40
[INFO] [stdout]     |
[INFO] [stdout] 516 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:516:64
[INFO] [stdout]     |
[INFO] [stdout] 516 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 498 | impl<TransferQuote> BridgeConnector for SynapseBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:517:12
[INFO] [stdout]     |
[INFO] [stdout] 517 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeTransferRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:555:47
[INFO] [stdout]     |
[INFO] [stdout] 555 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:555:80
[INFO] [stdout]     |
[INFO] [stdout] 555 |     async fn execute_transfer(&self, request: BridgeTransferRequest) -> Result<TransferResult, Box<dyn std::error::Error + Send + S...
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl<TransferResult> BridgeConnector for CBridge {
[INFO] [stdout]     |     ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferResult` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:556:12
[INFO] [stdout]     |
[INFO] [stdout] 556 |         Ok(TransferResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RouteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:563:48
[INFO] [stdout]     |
[INFO] [stdout] 563 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:563:72
[INFO] [stdout]     |
[INFO] [stdout] 563 |     async fn get_optimal_route(&self, request: RouteRequest) -> Result<BridgeRoute, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl<BridgeRoute> BridgeConnector for CBridge {
[INFO] [stdout]     |     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `BridgeRoute` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:564:12
[INFO] [stdout]     |
[INFO] [stdout] 564 |         Ok(BridgeRoute {
[INFO] [stdout]     |            ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `QuoteRequest` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:572:40
[INFO] [stdout]     |
[INFO] [stdout] 572 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:572:64
[INFO] [stdout]     |
[INFO] [stdout] 572 |     async fn get_quote(&self, request: QuoteRequest) -> Result<TransferQuote, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl<TransferQuote> BridgeConnector for CBridge {
[INFO] [stdout]     |     +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TransferQuote` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:573:12
[INFO] [stdout]     |
[INFO] [stdout] 573 |         Ok(TransferQuote {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `CrossChainConfig` is private
[INFO] [stdout]    --> src/funding/mod.rs:387:42
[INFO] [stdout]     |
[INFO] [stdout] 387 |     pub cross_chain_config: cross_chain::CrossChainConfig,
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `CrossChainConfig` is defined here...
[INFO] [stdout]    --> src/funding/cross_chain.rs:2:5
[INFO] [stdout]     |
[INFO] [stdout]   2 | use crate::types::*;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `CrossChainConfig` which is defined here
[INFO] [stdout]    --> src/types.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct CrossChainConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout] 387 -     pub cross_chain_config: cross_chain::CrossChainConfig,
[INFO] [stdout] 387 +     pub cross_chain_config: crate::CrossChainConfig,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct import `CrossChainConfig` is private
[INFO] [stdout]    --> src/funding/mod.rs:398:46
[INFO] [stdout]     |
[INFO] [stdout] 398 |             cross_chain_config: cross_chain::CrossChainConfig::default(),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^ private struct import
[INFO] [stdout]     |
[INFO] [stdout] note: the struct import `CrossChainConfig` is defined here...
[INFO] [stdout]    --> src/funding/cross_chain.rs:2:5
[INFO] [stdout]     |
[INFO] [stdout]   2 | use crate::types::*;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] note: ...and refers to the struct `CrossChainConfig` which is defined here
[INFO] [stdout]    --> src/types.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct CrossChainConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ you could import this directly
[INFO] [stdout] help: consider importing this struct through its public re-export instead
[INFO] [stdout]     |
[INFO] [stdout] 398 -             cross_chain_config: cross_chain::CrossChainConfig::default(),
[INFO] [stdout] 398 +             cross_chain_config: crate::CrossChainConfig::default(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/funding/cex.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/funding/cross_chain.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::WalletError`
[INFO] [stdout]  --> src/balance/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::error::WalletError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/balance/mod.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PasswordHash` and `PasswordVerifier`
[INFO] [stdout]  --> src/security/encryption.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use argon2::{Argon2, PasswordHash, PasswordHasher, PasswordVerifier, password_hash::SaltString};
[INFO] [stdout]   |                      ^^^^^^^^^^^^                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::RwLock`
[INFO] [stdout]  --> src/security/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::RwLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContractInstance` and `Interface`
[INFO] [stdout]  --> src/activity/simulator.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use alloy_contract::{ContractInstance, Interface};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::Client`
[INFO] [stdout]   --> src/activity/simulator.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use reqwest::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::WalletError`
[INFO] [stdout]  --> src/activity/test.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use crate::error::WalletError;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::Client`
[INFO] [stdout]  --> src/network/test.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use reqwest::Client;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:258:43
[INFO] [stdout]     |
[INFO] [stdout] 258 |                 .map_err(|e| WalletError::HealthCheck(format!("Exchange {} health check failed: {}", exchange_name, e)))?;
[INFO] [stdout]     |                                           ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]    --> src/funding/mod.rs:491:45
[INFO] [stdout]     |
[INFO] [stdout] 490 |     fn test_funding_strategy_optimization() {
[INFO] [stdout]     |     --------------------------------------- this is not `async`
[INFO] [stdout] 491 |         let manager = FundingManager::new().await.unwrap();
[INFO] [stdout]     |                                             ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]    --> src/funding/mod.rs:508:45
[INFO] [stdout]     |
[INFO] [stdout] 507 |     fn test_funding_stats() {
[INFO] [stdout]     |     ----------------------- this is not `async`
[INFO] [stdout] 508 |         let manager = FundingManager::new().await.unwrap();
[INFO] [stdout]     |                                             ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `across_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 |         if config.across_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `across_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 config.across_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `hop_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 28 |         if config.hop_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `hop_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 30 |                 config.hop_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:29:56
[INFO] [stdout]    |
[INFO] [stdout] 29 |               bridges.insert("hop".to_string(), Box::new(HopBridge::new(
[INFO] [stdout]    |  ________________________________________________________^
[INFO] [stdout] 30 | |                 config.hop_api_key.clone(),
[INFO] [stdout] 31 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `HopBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `HopBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `stargate_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 |         if config.stargate_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `stargate_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 config.stargate_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:35:61
[INFO] [stdout]    |
[INFO] [stdout] 35 |               bridges.insert("stargate".to_string(), Box::new(StargateBridge::new(
[INFO] [stdout]    |  _____________________________________________________________^
[INFO] [stdout] 36 | |                 config.stargate_api_key.clone(),
[INFO] [stdout] 37 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `StargateBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `StargateBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `synapse_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 40 |         if config.synapse_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `synapse_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 |                 config.synapse_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:41:60
[INFO] [stdout]    |
[INFO] [stdout] 41 |               bridges.insert("synapse".to_string(), Box::new(SynapseBridge::new(
[INFO] [stdout]    |  ____________________________________________________________^
[INFO] [stdout] 42 | |                 config.synapse_api_key.clone(),
[INFO] [stdout] 43 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `SynapseBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `SynapseBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `cbridge_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:46:19
[INFO] [stdout]    |
[INFO] [stdout] 46 |         if config.cbridge_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `cbridge_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:48:24
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 config.cbridge_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:47:60
[INFO] [stdout]    |
[INFO] [stdout] 47 |               bridges.insert("cbridge".to_string(), Box::new(CBridge::new(
[INFO] [stdout]    |  ____________________________________________________________^
[INFO] [stdout] 48 | |                 config.cbridge_api_key.clone(),
[INFO] [stdout] 49 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `CBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `CBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/funding/cross_chain.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |               bridges.insert("across".to_string(), Box::new(AcrossBridge::new(
[INFO] [stdout]    |  _____________-------______________________________-
[INFO] [stdout]    | |             |
[INFO] [stdout]    | |             ... which causes `bridges` to have type `HashMap<std::string::String, Box<AcrossBridge>>`
[INFO] [stdout] 24 | |                 config.across_api_key.clone(),
[INFO] [stdout] 25 | |             )?));
[INFO] [stdout]    | |_______________- this argument has type `Box<AcrossBridge>`...
[INFO] [stdout] ...
[INFO] [stdout] 54 |               bridges,
[INFO] [stdout]    |               ^^^^^^^ expected `HashMap<String, Box<...>>`, found `HashMap<String, Box<AcrossBridge>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `HashMap<_, Box<(dyn BridgeConnector + 'static)>>`
[INFO] [stdout]               found struct `HashMap<_, Box<AcrossBridge>>`
[INFO] [stdout]    = help: `AcrossBridge` implements `BridgeConnector` so you could box the found value and coerce it to the trait object `Box<dyn BridgeConnector>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `funding_type`
[INFO] [stdout]    --> src/funding/cross_chain.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             funding_type: FundingType::CrossChain,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `FundingType` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:106:27
[INFO] [stdout]     |
[INFO] [stdout] 106 |             funding_type: FundingType::CrossChain,
[INFO] [stdout]     |                           ^^^^^^^^^^^ use of undeclared type `FundingType`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `status`
[INFO] [stdout]    --> src/funding/cross_chain.rs:107:13
[INFO] [stdout]     |
[INFO] [stdout] 107 |             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |             ^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `FundingStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:107:34
[INFO] [stdout]     |
[INFO] [stdout] 107 |             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^ use of undeclared type `FundingStatus`
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 107 -             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout] 107 +             status: if success { FundingStats::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `FundingStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:107:68
[INFO] [stdout]     |
[INFO] [stdout] 107 |             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |                                                                    ^^^^^^^^^^^^^ use of undeclared type `FundingStatus`
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 107 -             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout] 107 +             status: if success { FundingStatus::Completed } else { FundingStats::Failed },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `bridge`
[INFO] [stdout]    --> src/funding/cross_chain.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |             bridge: Some(request.bridge.clone()),
[INFO] [stdout]     |             ^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `recipient_address`
[INFO] [stdout]    --> src/funding/cross_chain.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |             recipient_address: wallet_address,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:123:34
[INFO] [stdout]     |
[INFO] [stdout] 123 |             status: if success { TransferStatus::Completed } else { TransferStatus::Failed },
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:123:69
[INFO] [stdout]     |
[INFO] [stdout] 123 |             status: if success { TransferStatus::Completed } else { TransferStatus::Failed },
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `std::fmt::Debug` for type `types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:209:10
[INFO] [stdout]     |
[INFO] [stdout]  76 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |          ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 209 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ conflicting implementation for `types::FundingRequest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `std::fmt::Debug` for type `types::FundingSource`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |          ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ conflicting implementation for `types::FundingSource`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `std::fmt::Debug` for type `types::FundingPriority`
[INFO] [stdout]    --> src/types.rs:280:10
[INFO] [stdout]     |
[INFO] [stdout]  85 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |          ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ conflicting implementation for `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:292:42
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 transfer_record.status = TransferStatus::Cancelled;
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `types::FundingRequest`
[INFO] [stdout]   --> src/funding/mod.rs:52:44
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let funding_record = match request.funding_source {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]   --> src/funding/mod.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |             FundingSource::Cex(ref cex_request) => {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]    |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]    |
[INFO] [stdout] 53 -             FundingSource::Cex(ref cex_request) => {
[INFO] [stdout] 53 +             FundingSource::Cex { exchange: _, withdrawal_address: _ } => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Clone` for type `types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:209:17
[INFO] [stdout]     |
[INFO] [stdout]  76 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                 ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 209 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ conflicting implementation for `types::FundingRequest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Clone` for type `types::FundingSource`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout]  42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                 ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ conflicting implementation for `types::FundingSource`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Clone` for type `types::FundingPriority`
[INFO] [stdout]    --> src/types.rs:280:17
[INFO] [stdout]     |
[INFO] [stdout]  85 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                 ----- first implementation here
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ conflicting implementation for `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]   --> src/funding/mod.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             FundingSource::Mixer(ref mixer_request) => {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]    |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]    |
[INFO] [stdout] 56 -             FundingSource::Mixer(ref mixer_request) => {
[INFO] [stdout] 56 +             FundingSource::Mixer { service: _, mix_id: _ } => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]   --> src/funding/mod.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             FundingSource::CrossChain(ref cross_chain_request) => {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]    |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]    |
[INFO] [stdout] 59 -             FundingSource::CrossChain(ref cross_chain_request) => {
[INFO] [stdout] 59 +             FundingSource::CrossChain { source_chain: _, bridge_used: _ } => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/funding/mod.rs:71:19
[INFO] [stdout]     |
[INFO] [stdout]  71 |             .push(funding_record);
[INFO] [stdout]     |              ---- ^^^^^^^^^^^^^^ expected `funding::FundingRecord`, found `types::FundingRecord`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: `types::FundingRecord` and `funding::FundingRecord` have similar names, but are actually distinct types
[INFO] [stdout] note: `types::FundingRecord` is defined in module `crate::types` of the current crate
[INFO] [stdout]    --> src/types.rs:195:1
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct FundingRecord {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `funding::FundingRecord` is defined in module `crate::funding` of the current crate
[INFO] [stdout]    --> src/funding/mod.rs:466:1
[INFO] [stdout]     |
[INFO] [stdout] 466 | pub struct FundingRecord {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:1003:11
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `funding_source`
[INFO] [stdout]    --> src/funding/mod.rs:200:13
[INFO] [stdout]     |
[INFO] [stdout] 200 |             funding_source: FundingSource::Manual, // Will be replaced
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:201:40
[INFO] [stdout]     |
[INFO] [stdout] 201 |             priority: FundingPriority::Normal,
[INFO] [stdout]     |                                        ^^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:86:1
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `max_wait_time`
[INFO] [stdout]    --> src/funding/mod.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |             max_wait_time: 3600, // 1 hour
[INFO] [stdout]     |             ^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `privacy_requirements`
[INFO] [stdout]    --> src/funding/mod.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             privacy_requirements: PrivacyLevel::Medium,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `types::FundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:210:25
[INFO] [stdout]     |
[INFO] [stdout] 210 |         funding_request.funding_source = match strategy.primary_source {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/mod.rs:211:39
[INFO] [stdout]     |
[INFO] [stdout] 211 |             FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 211 -             FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout] 212 -                 wallet_id,
[INFO] [stdout] 213 -                 amount,
[INFO] [stdout] 214 -                 chain_id,
[INFO] [stdout] 215 -                 exchange: "binance".to_string(),
[INFO] [stdout] 216 -                 withdraw_method: WithdrawMethod::Direct,
[INFO] [stdout] 217 -                 delay_seconds: 0,
[INFO] [stdout] 218 -             }),
[INFO] [stdout] 211 +             FundingSourceType::Cex => FundingSource::Cex { exchange: /* value */, withdrawal_address: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/funding/mod.rs:219:41
[INFO] [stdout]     |
[INFO] [stdout] 219 |             FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 219 -             FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout] 220 -                 wallet_id,
[INFO] [stdout] 221 -                 amount,
[INFO] [stdout] 222 -                 chain_id,
[INFO] [stdout] 223 -                 mixer_type: MixerType::Tornado,
[INFO] [stdout] 224 -                 anonymity_set: 100,
[INFO] [stdout] 225 -                 delay_hours: 1,
[INFO] [stdout] 226 -             }),
[INFO] [stdout] 219 +             FundingSourceType::Mixer => FundingSource::Mixer { service: /* value */, mix_id: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `post_funding_activity` in initializer of `types::MixerFundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:219:62
[INFO] [stdout]     |
[INFO] [stdout] 219 |             FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^ missing `post_funding_activity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/funding/mod.rs:227:46
[INFO] [stdout]     |
[INFO] [stdout] 227 |             FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 227 -             FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout] 228 -                 wallet_id,
[INFO] [stdout] 229 -                 amount,
[INFO] [stdout] 230 -                 source_chain: 1, // Ethereum
[INFO] [stdout] 231 -                 target_chain: chain_id,
[INFO] [stdout] 232 -                 bridge: "across".to_string(),
[INFO] [stdout] 233 -                 slippage_tolerance: 0.005,
[INFO] [stdout] 234 -             }),
[INFO] [stdout] 227 +             FundingSourceType::CrossChain => FundingSource::CrossChain { source_chain: /* value */, bridge_used: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `types::FundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:244:36
[INFO] [stdout]     |
[INFO] [stdout] 244 |                     backup_request.funding_source = match backup_source {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/mod.rs:245:51
[INFO] [stdout]     |
[INFO] [stdout] 245 |                         FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 245 -                         FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout] 246 -                             wallet_id,
[INFO] [stdout] 247 -                             amount,
[INFO] [stdout] 248 -                             chain_id,
[INFO] [stdout] 249 -                             exchange: "coinbase".to_string(),
[INFO] [stdout] 250 -                             withdraw_method: WithdrawMethod::Direct,
[INFO] [stdout] 251 -                             delay_seconds: 0,
[INFO] [stdout] 252 -                         }),
[INFO] [stdout] 245 +                         FundingSourceType::Cex => FundingSource::Cex { exchange: /* value */, withdrawal_address: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/funding/mod.rs:253:58
[INFO] [stdout]     |
[INFO] [stdout] 253 |                         FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 253 -                         FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout] 254 -                             wallet_id,
[INFO] [stdout] 255 -                             amount,
[INFO] [stdout] 256 -                             source_chain: 137, // Polygon
[INFO] [stdout] 257 -                             target_chain: chain_id,
[INFO] [stdout] 258 -                             bridge: "hop".to_string(),
[INFO] [stdout] 259 -                             slippage_tolerance: 0.01,
[INFO] [stdout] 260 -                         }),
[INFO] [stdout] 253 +                         FundingSourceType::CrossChain => FundingSource::CrossChain { source_chain: /* value */, bridge_used: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/funding/mod.rs:261:53
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 261 -                         FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout] 262 -                             wallet_id,
[INFO] [stdout] 263 -                             amount,
[INFO] [stdout] 264 -                             chain_id,
[INFO] [stdout] 265 -                             mixer_type: MixerType::Aztec,
[INFO] [stdout] 266 -                             anonymity_set: 50,
[INFO] [stdout] 267 -                             delay_hours: 2,
[INFO] [stdout] 268 -                         }),
[INFO] [stdout] 261 +                         FundingSourceType::Mixer => FundingSource::Mixer { service: /* value */, mix_id: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `post_funding_activity` in initializer of `types::MixerFundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:261:74
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^^ missing `post_funding_activity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:299:39
[INFO] [stdout]     |
[INFO] [stdout] 299 |             .map_err(|e| WalletError::HealthCheck(format!("CEX funding error: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 |             .map_err(|e| WalletError::HealthCheck(format!("Mixer funding error: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `health_check` found for struct `CrossChainFunding` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:306:34
[INFO] [stdout]     |
[INFO] [stdout] 306 |         self.cross_chain_funding.health_check().await
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ method not found in `CrossChainFunding`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/funding/cross_chain.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct CrossChainFunding {
[INFO] [stdout]     | ---------------------------- method `health_check` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `ExchangeConnector` defines an item `health_check`, perhaps you need to implement it
[INFO] [stdout]    --> src/funding/cex.rs:299:1
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub trait ExchangeConnector: Send + Sync {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:307:39
[INFO] [stdout]     |
[INFO] [stdout] 307 |             .map_err(|e| WalletError::HealthCheck(format!("Cross-chain funding error: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:373:48
[INFO] [stdout]     |
[INFO] [stdout] 373 | ...   let score_a = (a.reliability_score * 0.4 + a.privacy_score * 0.3 + (10.0 - a.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                          ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:373:72
[INFO] [stdout]     |
[INFO] [stdout] 373 | ...   let score_a = (a.reliability_score * 0.4 + a.privacy_score * 0.3 + (10.0 - a.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                                                  ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:374:48
[INFO] [stdout]     |
[INFO] [stdout] 374 | ...   let score_b = (b.reliability_score * 0.4 + b.privacy_score * 0.3 + (10.0 - b.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                          ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:374:72
[INFO] [stdout]     |
[INFO] [stdout] 374 | ...   let score_b = (b.reliability_score * 0.4 + b.privacy_score * 0.3 + (10.0 - b.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                                                  ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/balance/manager.rs:336:41
[INFO] [stdout]     |
[INFO] [stdout] 336 |                 return Err(WalletError::HealthCheck(
[INFO] [stdout]     |                                         ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]   --> src/generator/mod.rs:68:39
[INFO] [stdout]    |
[INFO] [stdout] 68 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum WalletError {
[INFO] [stdout]    | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/balance/manager.rs:345:37
[INFO] [stdout]     |
[INFO] [stdout] 345 |             return Err(WalletError::HealthCheck("Cache too large".to_string()));
[INFO] [stdout]     |                                     ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]   --> src/generator/mod.rs:75:39
[INFO] [stdout]    |
[INFO] [stdout] 75 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum WalletError {
[INFO] [stdout]    | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `hdwallet::ChainPath<'_>: std::str::FromStr` is not satisfied
[INFO] [stdout]   --> src/generator/mod.rs:79:72
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let derived_key = key_chain.derive_private_key(derivation_path.parse().unwrap())
[INFO] [stdout]    |                                                                        ^^^^^ the trait `std::str::FromStr` is not implemented for `hdwallet::ChainPath<'_>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `std::str::FromStr`:
[INFO] [stdout]              Address
[INFO] [stdout]              AssociatedData
[INFO] [stdout]              Bits<BITS, LIMBS>
[INFO] [stdout]              BlockId
[INFO] [stdout]              BlockNumberOrTag
[INFO] [stdout]              Bloom
[INFO] [stdout]              Braced
[INFO] [stdout]              ByteString
[INFO] [stdout]            and 198 others
[INFO] [stdout] note: required by a bound in `core::str::<impl str>::parse`
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/str/mod.rs:2780:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]   --> src/generator/mod.rs:80:39
[INFO] [stdout]    |
[INFO] [stdout] 80 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/error.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum WalletError {
[INFO] [stdout]    | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/generator/mod.rs:143:37
[INFO] [stdout]     |
[INFO] [stdout] 143 |             return Err(WalletError::HealthCheck("Invalid address format".to_string()));
[INFO] [stdout]     |                                     ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cex.rs:30:63
[INFO] [stdout]    |
[INFO] [stdout] 30 |               exchanges.insert("coinbase".to_string(), Box::new(CoinbaseConnector::new(
[INFO] [stdout]    |  _______________________________________________________________^
[INFO] [stdout] 31 | |                 config.coinbase_api_key.clone(),
[INFO] [stdout] 32 | |                 config.coinbase_secret.clone(),
[INFO] [stdout] 33 | |             )?));
[INFO] [stdout]    | |______________^ expected `BinanceConnector`, found `CoinbaseConnector`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `CoinbaseConnector` to `BinanceConnector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cex.rs:37:58
[INFO] [stdout]    |
[INFO] [stdout] 37 |               exchanges.insert("okx".to_string(), Box::new(OkxConnector::new(
[INFO] [stdout]    |  __________________________________________________________^
[INFO] [stdout] 38 | |                 config.okx_api_key.clone(),
[INFO] [stdout] 39 | |                 config.okx_secret.clone(),
[INFO] [stdout] 40 | |                 config.okx_passphrase.clone(),
[INFO] [stdout] 41 | |             )?));
[INFO] [stdout]    | |______________^ expected `BinanceConnector`, found `OkxConnector`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `OkxConnector` to `BinanceConnector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/funding/cex.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |               exchanges.insert("binance".to_string(), Box::new(BinanceConnector::new(
[INFO] [stdout]    |  _____________---------_______________________________-
[INFO] [stdout]    | |             |
[INFO] [stdout]    | |             ... which causes `exchanges` to have type `std::collections::HashMap<std::string::String, Box<BinanceConnector>>`
[INFO] [stdout] 24 | |                 config.binance_api_key.clone(),
[INFO] [stdout] 25 | |                 config.binance_secret.clone(),
[INFO] [stdout] 26 | |             )?));
[INFO] [stdout]    | |_______________- this argument has type `Box<BinanceConnector>`...
[INFO] [stdout] ...
[INFO] [stdout] 46 |               exchanges,
[INFO] [stdout]    |               ^^^^^^^^^ expected `HashMap<String, Box<...>>`, found `HashMap<String, Box<BinanceConnector>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `std::collections::HashMap<_, Box<(dyn ExchangeConnector + 'static)>>`
[INFO] [stdout]               found struct `std::collections::HashMap<_, Box<BinanceConnector>>`
[INFO] [stdout]    = help: `BinanceConnector` implements `ExchangeConnector` so you could box the found value and coerce it to the trait object `Box<dyn ExchangeConnector>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Staged` found for enum `types::WithdrawMethod` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:80:29
[INFO] [stdout]     |
[INFO] [stdout]  80 |             WithdrawMethod::Staged => {
[INFO] [stdout]     |                             ^^^^^^ variant, associated function, or constant not found in `types::WithdrawMethod`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:365:1
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub enum WithdrawMethod {
[INFO] [stdout]     | ----------------------- variant, associated function, or constant `Staged` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_bytes` found for struct `SaltString` in the current scope
[INFO] [stdout]    --> src/security/encryption.rs:183:29
[INFO] [stdout]     |
[INFO] [stdout] 183 |             salt: Some(salt.as_bytes().to_vec()),
[INFO] [stdout]     |                             ^^^^^^^^ method not found in `SaltString`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Randomized` found for enum `types::WithdrawMethod` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:83:29
[INFO] [stdout]     |
[INFO] [stdout]  83 |             WithdrawMethod::Randomized => {
[INFO] [stdout]     |                             ^^^^^^^^^^ variant, associated function, or constant not found in `types::WithdrawMethod`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:365:1
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub enum WithdrawMethod {
[INFO] [stdout]     | ----------------------- variant, associated function, or constant `Randomized` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/cex.rs:103:29
[INFO] [stdout]     |
[INFO] [stdout] 103 |             funding_source: FundingSource::Cex(request.clone()),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 103 -             funding_source: FundingSource::Cex(request.clone()),
[INFO] [stdout] 103 +             funding_source: FundingSource::Cex { exchange: /* value */, withdrawal_address: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:258:43
[INFO] [stdout]     |
[INFO] [stdout] 258 |                 .map_err(|e| WalletError::HealthCheck(format!("Exchange {} health check failed: {}", exchange_name, e)))?;
[INFO] [stdout]     |                                           ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `across_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 |         if config.across_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `across_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 config.across_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `hop_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 28 |         if config.hop_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `hop_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:30:24
[INFO] [stdout]    |
[INFO] [stdout] 30 |                 config.hop_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:29:56
[INFO] [stdout]    |
[INFO] [stdout] 29 |               bridges.insert("hop".to_string(), Box::new(HopBridge::new(
[INFO] [stdout]    |  ________________________________________________________^
[INFO] [stdout] 30 | |                 config.hop_api_key.clone(),
[INFO] [stdout] 31 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `HopBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `HopBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `stargate_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 |         if config.stargate_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `stargate_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 config.stargate_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:35:61
[INFO] [stdout]    |
[INFO] [stdout] 35 |               bridges.insert("stargate".to_string(), Box::new(StargateBridge::new(
[INFO] [stdout]    |  _____________________________________________________________^
[INFO] [stdout] 36 | |                 config.stargate_api_key.clone(),
[INFO] [stdout] 37 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `StargateBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `StargateBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `synapse_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 40 |         if config.synapse_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `synapse_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 |                 config.synapse_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:41:60
[INFO] [stdout]    |
[INFO] [stdout] 41 |               bridges.insert("synapse".to_string(), Box::new(SynapseBridge::new(
[INFO] [stdout]    |  ____________________________________________________________^
[INFO] [stdout] 42 | |                 config.synapse_api_key.clone(),
[INFO] [stdout] 43 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `SynapseBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `SynapseBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `cbridge_enabled` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:46:19
[INFO] [stdout]    |
[INFO] [stdout] 46 |         if config.cbridge_enabled {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `cbridge_api_key` on type `&types::CrossChainConfig`
[INFO] [stdout]   --> src/funding/cross_chain.rs:48:24
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 config.cbridge_api_key.clone(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/funding/cross_chain.rs:47:60
[INFO] [stdout]    |
[INFO] [stdout] 47 |               bridges.insert("cbridge".to_string(), Box::new(CBridge::new(
[INFO] [stdout]    |  ____________________________________________________________^
[INFO] [stdout] 48 | |                 config.cbridge_api_key.clone(),
[INFO] [stdout] 49 | |             )?));
[INFO] [stdout]    | |______________^ expected `AcrossBridge`, found `CBridge`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `CBridge` to `AcrossBridge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/funding/cross_chain.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |               bridges.insert("across".to_string(), Box::new(AcrossBridge::new(
[INFO] [stdout]    |  _____________-------______________________________-
[INFO] [stdout]    | |             |
[INFO] [stdout]    | |             ... which causes `bridges` to have type `std::collections::HashMap<std::string::String, Box<AcrossBridge>>`
[INFO] [stdout] 24 | |                 config.across_api_key.clone(),
[INFO] [stdout] 25 | |             )?));
[INFO] [stdout]    | |_______________- this argument has type `Box<AcrossBridge>`...
[INFO] [stdout] ...
[INFO] [stdout] 54 |               bridges,
[INFO] [stdout]    |               ^^^^^^^ expected `HashMap<String, Box<...>>`, found `HashMap<String, Box<AcrossBridge>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `std::collections::HashMap<_, Box<(dyn BridgeConnector + 'static)>>`
[INFO] [stdout]               found struct `std::collections::HashMap<_, Box<AcrossBridge>>`
[INFO] [stdout]    = help: `AcrossBridge` implements `BridgeConnector` so you could box the found value and coerce it to the trait object `Box<dyn BridgeConnector>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `funding_type`
[INFO] [stdout]    --> src/funding/cross_chain.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             funding_type: FundingType::CrossChain,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `FundingType` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:106:27
[INFO] [stdout]     |
[INFO] [stdout] 106 |             funding_type: FundingType::CrossChain,
[INFO] [stdout]     |                           ^^^^^^^^^^^ use of undeclared type `FundingType`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `status`
[INFO] [stdout]    --> src/funding/cross_chain.rs:107:13
[INFO] [stdout]     |
[INFO] [stdout] 107 |             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |             ^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `FundingStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:107:34
[INFO] [stdout]     |
[INFO] [stdout] 107 |             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^ use of undeclared type `FundingStatus`
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 107 -             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout] 107 +             status: if success { FundingStats::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `FundingStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:107:68
[INFO] [stdout]     |
[INFO] [stdout] 107 |             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout]     |                                                                    ^^^^^^^^^^^^^ use of undeclared type `FundingStatus`
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 107 -             status: if success { FundingStatus::Completed } else { FundingStatus::Failed },
[INFO] [stdout] 107 +             status: if success { FundingStatus::Completed } else { FundingStats::Failed },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `bridge`
[INFO] [stdout]    --> src/funding/cross_chain.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |             bridge: Some(request.bridge.clone()),
[INFO] [stdout]     |             ^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRecord` has no field named `recipient_address`
[INFO] [stdout]    --> src/funding/cross_chain.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |             recipient_address: wallet_address,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ `types::FundingRecord` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `funding_source`, `success`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:123:34
[INFO] [stdout]     |
[INFO] [stdout] 123 |             status: if success { TransferStatus::Completed } else { TransferStatus::Failed },
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:123:69
[INFO] [stdout]     |
[INFO] [stdout] 123 |             status: if success { TransferStatus::Completed } else { TransferStatus::Failed },
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:292:42
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 transfer_record.status = TransferStatus::Cancelled;
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `types::FundingRequest`
[INFO] [stdout]   --> src/funding/mod.rs:52:44
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let funding_record = match request.funding_source {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]   --> src/funding/mod.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |             FundingSource::Cex(ref cex_request) => {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]    |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]    |
[INFO] [stdout] 53 -             FundingSource::Cex(ref cex_request) => {
[INFO] [stdout] 53 +             FundingSource::Cex { exchange: _, withdrawal_address: _ } => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]   --> src/funding/mod.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             FundingSource::Mixer(ref mixer_request) => {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]    |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]    |
[INFO] [stdout] 56 -             FundingSource::Mixer(ref mixer_request) => {
[INFO] [stdout] 56 +             FundingSource::Mixer { service: _, mix_id: _ } => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]   --> src/funding/mod.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             FundingSource::CrossChain(ref cross_chain_request) => {
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]    |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]    |
[INFO] [stdout] 59 -             FundingSource::CrossChain(ref cross_chain_request) => {
[INFO] [stdout] 59 +             FundingSource::CrossChain { source_chain: _, bridge_used: _ } => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_client` found for struct `ProviderBuilder<L, F, N>` in the current scope
[INFO] [stdout]   --> src/activity/simulator.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 81 |           let provider = ProviderBuilder::new()
[INFO] [stdout]    |  ________________________-
[INFO] [stdout] 82 | |             .with_client(client)
[INFO] [stdout]    | |_____________-^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-19202b42be5b4654.long-type-15139009670050098146.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: there is a method `on_client` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 82 -             .with_client(client)
[INFO] [stdout] 82 +             .on_client(client)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/funding/mod.rs:71:19
[INFO] [stdout]     |
[INFO] [stdout]  71 |             .push(funding_record);
[INFO] [stdout]     |              ---- ^^^^^^^^^^^^^^ expected `funding::FundingRecord`, found `types::FundingRecord`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              arguments to this method are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: `types::FundingRecord` and `funding::FundingRecord` have similar names, but are actually distinct types
[INFO] [stdout] note: `types::FundingRecord` is defined in module `crate::types` of the current crate
[INFO] [stdout]    --> src/types.rs:195:1
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct FundingRecord {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `funding::FundingRecord` is defined in module `crate::funding` of the current crate
[INFO] [stdout]    --> src/funding/mod.rs:466:1
[INFO] [stdout]     |
[INFO] [stdout] 466 | pub struct FundingRecord {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/mod.rs:1003:11
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `funding_source`
[INFO] [stdout]    --> src/funding/mod.rs:200:13
[INFO] [stdout]     |
[INFO] [stdout] 200 |             funding_source: FundingSource::Manual, // Will be replaced
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:201:40
[INFO] [stdout]     |
[INFO] [stdout] 201 |             priority: FundingPriority::Normal,
[INFO] [stdout]     |                                        ^^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:86:1
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `max_wait_time`
[INFO] [stdout]    --> src/funding/mod.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |             max_wait_time: 3600, // 1 hour
[INFO] [stdout]     |             ^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `privacy_requirements`
[INFO] [stdout]    --> src/funding/mod.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             privacy_requirements: PrivacyLevel::Medium,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `types::FundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:210:25
[INFO] [stdout]     |
[INFO] [stdout] 210 |         funding_request.funding_source = match strategy.primary_source {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/mod.rs:211:39
[INFO] [stdout]     |
[INFO] [stdout] 211 |             FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 211 -             FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout] 212 -                 wallet_id,
[INFO] [stdout] 213 -                 amount,
[INFO] [stdout] 214 -                 chain_id,
[INFO] [stdout] 215 -                 exchange: "binance".to_string(),
[INFO] [stdout] 216 -                 withdraw_method: WithdrawMethod::Direct,
[INFO] [stdout] 217 -                 delay_seconds: 0,
[INFO] [stdout] 218 -             }),
[INFO] [stdout] 211 +             FundingSourceType::Cex => FundingSource::Cex { exchange: /* value */, withdrawal_address: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/funding/mod.rs:219:41
[INFO] [stdout]     |
[INFO] [stdout] 219 |             FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 219 -             FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout] 220 -                 wallet_id,
[INFO] [stdout] 221 -                 amount,
[INFO] [stdout] 222 -                 chain_id,
[INFO] [stdout] 223 -                 mixer_type: MixerType::Tornado,
[INFO] [stdout] 224 -                 anonymity_set: 100,
[INFO] [stdout] 225 -                 delay_hours: 1,
[INFO] [stdout] 226 -             }),
[INFO] [stdout] 219 +             FundingSourceType::Mixer => FundingSource::Mixer { service: /* value */, mix_id: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `post_funding_activity` in initializer of `types::MixerFundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:219:62
[INFO] [stdout]     |
[INFO] [stdout] 219 |             FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^ missing `post_funding_activity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/funding/mod.rs:227:46
[INFO] [stdout]     |
[INFO] [stdout] 227 |             FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 227 -             FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout] 228 -                 wallet_id,
[INFO] [stdout] 229 -                 amount,
[INFO] [stdout] 230 -                 source_chain: 1, // Ethereum
[INFO] [stdout] 231 -                 target_chain: chain_id,
[INFO] [stdout] 232 -                 bridge: "across".to_string(),
[INFO] [stdout] 233 -                 slippage_tolerance: 0.005,
[INFO] [stdout] 234 -             }),
[INFO] [stdout] 227 +             FundingSourceType::CrossChain => FundingSource::CrossChain { source_chain: /* value */, bridge_used: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `types::FundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:244:36
[INFO] [stdout]     |
[INFO] [stdout] 244 |                     backup_request.funding_source = match backup_source {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/mod.rs:245:51
[INFO] [stdout]     |
[INFO] [stdout] 245 |                         FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 245 -                         FundingSourceType::Cex => FundingSource::Cex(CexFundingRequest {
[INFO] [stdout] 246 -                             wallet_id,
[INFO] [stdout] 247 -                             amount,
[INFO] [stdout] 248 -                             chain_id,
[INFO] [stdout] 249 -                             exchange: "coinbase".to_string(),
[INFO] [stdout] 250 -                             withdraw_method: WithdrawMethod::Direct,
[INFO] [stdout] 251 -                             delay_seconds: 0,
[INFO] [stdout] 252 -                         }),
[INFO] [stdout] 245 +                         FundingSourceType::Cex => FundingSource::Cex { exchange: /* value */, withdrawal_address: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/funding/mod.rs:253:58
[INFO] [stdout]     |
[INFO] [stdout] 253 |                         FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 253 -                         FundingSourceType::CrossChain => FundingSource::CrossChain(CrossChainFundingRequest {
[INFO] [stdout] 254 -                             wallet_id,
[INFO] [stdout] 255 -                             amount,
[INFO] [stdout] 256 -                             source_chain: 137, // Polygon
[INFO] [stdout] 257 -                             target_chain: chain_id,
[INFO] [stdout] 258 -                             bridge: "hop".to_string(),
[INFO] [stdout] 259 -                             slippage_tolerance: 0.01,
[INFO] [stdout] 260 -                         }),
[INFO] [stdout] 253 +                         FundingSourceType::CrossChain => FundingSource::CrossChain { source_chain: /* value */, bridge_used: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_to` found for struct `TransactionRequest` in the current scope
[INFO] [stdout]    --> src/activity/simulator.rs:100:18
[INFO] [stdout]     |
[INFO] [stdout]  99 |               let tx = TransactionRequest::default()
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 100 | |                 .with_to(self.uniswap_address)
[INFO] [stdout]     | |_________________-^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/alloy-network-1.0.20/src/transaction/builder.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 |       fn with_to(mut self, to: Address) -> Self {
[INFO] [stdout]     |          ------- the method is available for `TransactionRequest` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `TransactionBuilder` which provides `with_to` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   2 + use alloy_provider::alloy_network::TransactionBuilder;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `with_from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 100 -                 .with_to(self.uniswap_address)
[INFO] [stdout] 100 +                 .with_from(self.uniswap_address)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/funding/mod.rs:261:53
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^ not a value
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to create a new value of the struct
[INFO] [stdout]     |
[INFO] [stdout] 261 -                         FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout] 262 -                             wallet_id,
[INFO] [stdout] 263 -                             amount,
[INFO] [stdout] 264 -                             chain_id,
[INFO] [stdout] 265 -                             mixer_type: MixerType::Aztec,
[INFO] [stdout] 266 -                             anonymity_set: 50,
[INFO] [stdout] 267 -                             delay_hours: 2,
[INFO] [stdout] 268 -                         }),
[INFO] [stdout] 261 +                         FundingSourceType::Mixer => FundingSource::Mixer { service: /* value */, mix_id: /* value */ },
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `post_funding_activity` in initializer of `types::MixerFundingRequest`
[INFO] [stdout]    --> src/funding/mod.rs:261:74
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         FundingSourceType::Mixer => FundingSource::Mixer(MixerFundingRequest {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^^ missing `post_funding_activity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:299:39
[INFO] [stdout]     |
[INFO] [stdout] 299 |             .map_err(|e| WalletError::HealthCheck(format!("CEX funding error: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 |             .map_err(|e| WalletError::HealthCheck(format!("Mixer funding error: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `health_check` found for struct `CrossChainFunding` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:306:34
[INFO] [stdout]     |
[INFO] [stdout] 306 |         self.cross_chain_funding.health_check().await
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ method not found in `CrossChainFunding`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/funding/cross_chain.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct CrossChainFunding {
[INFO] [stdout]     | ---------------------------- method `health_check` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `ExchangeConnector` defines an item `health_check`, perhaps you need to implement it
[INFO] [stdout]    --> src/funding/cex.rs:299:1
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub trait ExchangeConnector: Send + Sync {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:307:39
[INFO] [stdout]     |
[INFO] [stdout] 307 |             .map_err(|e| WalletError::HealthCheck(format!("Cross-chain funding error: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:373:48
[INFO] [stdout]     |
[INFO] [stdout] 373 | ...   let score_a = (a.reliability_score * 0.4 + a.privacy_score * 0.3 + (10.0 - a.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                          ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:373:72
[INFO] [stdout]     |
[INFO] [stdout] 373 | ...   let score_a = (a.reliability_score * 0.4 + a.privacy_score * 0.3 + (10.0 - a.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                                                  ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:374:48
[INFO] [stdout]     |
[INFO] [stdout] 374 | ...   let score_b = (b.reliability_score * 0.4 + b.privacy_score * 0.3 + (10.0 - b.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                          ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot multiply `u32` by `{float}`
[INFO] [stdout]    --> src/funding/mod.rs:374:72
[INFO] [stdout]     |
[INFO] [stdout] 374 | ...   let score_b = (b.reliability_score * 0.4 + b.privacy_score * 0.3 + (10.0 - b.estimated_cost / amount * 100.0) * 0.3) as i32;
[INFO] [stdout]     |                                                                  ^ no implementation for `u32 * {float}`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Mul<{float}>` is not implemented for `u32`
[INFO] [stdout]     = help: the following other types implement trait `Mul<Rhs>`:
[INFO] [stdout]               `&u32` implements `Mul<u32>`
[INFO] [stdout]               `&u32` implements `Mul`
[INFO] [stdout]               `u32` implements `Mul<&u32>`
[INFO] [stdout]               `u32` implements `Mul<Duration>`
[INFO] [stdout]               `u32` implements `Mul<zerocopy::byteorder::U32<O>>`
[INFO] [stdout]               `u32` implements `Mul`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/balance/manager.rs:336:41
[INFO] [stdout]     |
[INFO] [stdout] 336 |                 return Err(WalletError::HealthCheck(
[INFO] [stdout]     |                                         ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/balance/manager.rs:345:37
[INFO] [stdout]     |
[INFO] [stdout] 345 |             return Err(WalletError::HealthCheck("Cache too large".to_string()));
[INFO] [stdout]     |                                     ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_bytes` found for struct `SaltString` in the current scope
[INFO] [stdout]    --> src/security/encryption.rs:183:29
[INFO] [stdout]     |
[INFO] [stdout] 183 |             salt: Some(salt.as_bytes().to_vec()),
[INFO] [stdout]     |                             ^^^^^^^^ method not found in `SaltString`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_client` found for struct `ProviderBuilder<L, F, N>` in the current scope
[INFO] [stdout]   --> src/activity/simulator.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 81 |           let provider = ProviderBuilder::new()
[INFO] [stdout]    |  ________________________-
[INFO] [stdout] 82 | |             .with_client(client)
[INFO] [stdout]    | |_____________-^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-e088be95fdc7a36c.long-type-12403694613617408612.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: there is a method `on_client` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 82 -             .with_client(client)
[INFO] [stdout] 82 +             .on_client(client)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `proxy` found for reference `&&Client` in the current scope
[INFO] [stdout]   --> src/network/proxy.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |             c.proxy().map(|p| p.url().to_string()).unwrap_or_default() == *proxy_url
[INFO] [stdout]    |               ^^^^^ method not found in `&&Client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_to` found for struct `TransactionRequest` in the current scope
[INFO] [stdout]    --> src/activity/simulator.rs:100:18
[INFO] [stdout]     |
[INFO] [stdout]  99 |               let tx = TransactionRequest::default()
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 100 | |                 .with_to(self.uniswap_address)
[INFO] [stdout]     | |_________________-^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/alloy-network-1.0.20/src/transaction/builder.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 |       fn with_to(mut self, to: Address) -> Self {
[INFO] [stdout]     |          ------- the method is available for `TransactionRequest` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `TransactionBuilder` which provides `with_to` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   2 + use alloy_provider::alloy_network::TransactionBuilder;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `with_from` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 100 -                 .with_to(self.uniswap_address)
[INFO] [stdout] 100 +                 .with_from(self.uniswap_address)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0596]: cannot borrow `self.funding` as mutable, as it is behind a `&` reference
[INFO] [stdout]   --> src/lib.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 88 |         self.funding.fund_wallet(request).await
[INFO] [stdout]    |         ^^^^^^^^^^^^ `self` is a `&` reference, so it cannot be borrowed as mutable
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing this to be a mutable reference
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub async fn fund_wallet(&mut self, request: FundingRequest) -> Result<(), WalletError> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `proxy` found for reference `&&Client` in the current scope
[INFO] [stdout]   --> src/network/proxy.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |             c.proxy().map(|p| p.url().to_string()).unwrap_or_default() == *proxy_url
[INFO] [stdout]    |               ^^^^^ method not found in `&&Client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0596]: cannot borrow `self.funding` as mutable, as it is behind a `&` reference
[INFO] [stdout]   --> src/lib.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 88 |         self.funding.fund_wallet(request).await
[INFO] [stdout]    |         ^^^^^^^^^^^^ `self` is a `&` reference, so it cannot be borrowed as mutable
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing this to be a mutable reference
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub async fn fund_wallet(&mut self, request: FundingRequest) -> Result<(), WalletError> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/types.rs:102:24
[INFO] [stdout]      |
[INFO] [stdout]  102 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]      |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout] ...
[INFO] [stdout]  107 |     pub default_privacy_level: PrivacyLevel,
[INFO] [stdout]      |     --------------------------------------- required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Serialize` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]     --> src/types.rs:273:1
[INFO] [stdout]      |
[INFO] [stdout]  273 | pub enum PrivacyLevel {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Serialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 449 others
[INFO] [stdout] note: required by a bound in `types::_::_serde::ser::SerializeStruct::serialize_field`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/ser/mod.rs:1866:21
[INFO] [stdout]      |
[INFO] [stdout] 1864 |     fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error>
[INFO] [stdout]      |        --------------- required by a bound in this associated function
[INFO] [stdout] 1865 |     where
[INFO] [stdout] 1866 |         T: ?Sized + Serialize;
[INFO] [stdout]      |                     ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field`
[INFO] [stdout]      = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/types.rs:102:24
[INFO] [stdout]      |
[INFO] [stdout]  102 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]      |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout] ...
[INFO] [stdout]  107 |     pub default_privacy_level: PrivacyLevel,
[INFO] [stdout]      |     --------------------------------------- required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Serialize` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]     --> src/types.rs:273:1
[INFO] [stdout]      |
[INFO] [stdout]  273 | pub enum PrivacyLevel {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Serialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 449 others
[INFO] [stdout] note: required by a bound in `types::_::_serde::ser::SerializeStruct::serialize_field`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/ser/mod.rs:1866:21
[INFO] [stdout]      |
[INFO] [stdout] 1864 |     fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error>
[INFO] [stdout]      |        --------------- required by a bound in this associated function
[INFO] [stdout] 1865 |     where
[INFO] [stdout] 1866 |         T: ?Sized + Serialize;
[INFO] [stdout]      |                     ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field`
[INFO] [stdout]      = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/types.rs:107:32
[INFO] [stdout]      |
[INFO] [stdout]  107 |     pub default_privacy_level: PrivacyLevel,
[INFO] [stdout]      |                                ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]     --> src/types.rs:273:1
[INFO] [stdout]      |
[INFO] [stdout]  273 | pub enum PrivacyLevel {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 465 others
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1732:12
[INFO] [stdout]      |
[INFO] [stdout] 1730 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1731 |     where
[INFO] [stdout] 1732 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-e088be95fdc7a36c.long-type-17921235075492702719.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/types.rs:107:32
[INFO] [stdout]      |
[INFO] [stdout]  107 |     pub default_privacy_level: PrivacyLevel,
[INFO] [stdout]      |                                ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]     --> src/types.rs:273:1
[INFO] [stdout]      |
[INFO] [stdout]  273 | pub enum PrivacyLevel {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 465 others
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1732:12
[INFO] [stdout]      |
[INFO] [stdout] 1730 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1731 |     where
[INFO] [stdout] 1732 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-19202b42be5b4654.long-type-15053212017986768066.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/types.rs:107:32
[INFO] [stdout]      |
[INFO] [stdout]  107 |     pub default_privacy_level: PrivacyLevel,
[INFO] [stdout]      |                                ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]     --> src/types.rs:273:1
[INFO] [stdout]      |
[INFO] [stdout]  273 | pub enum PrivacyLevel {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 465 others
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1871:12
[INFO] [stdout]      |
[INFO] [stdout] 1869 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1870 |     where
[INFO] [stdout] 1871 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-e088be95fdc7a36c.long-type-17921235075492702719.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/types.rs:102:35
[INFO] [stdout]     |
[INFO] [stdout] 102 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                                   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]    --> src/types.rs:273:1
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub enum PrivacyLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]               `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]             and 465 others
[INFO] [stdout] note: required by a bound in `types::_::_serde::__private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/private/de.rs:25:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  24 | where
[INFO] [stdout]  25 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-e088be95fdc7a36c.long-type-17921235075492702719.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/types.rs:107:32
[INFO] [stdout]      |
[INFO] [stdout]  107 |     pub default_privacy_level: PrivacyLevel,
[INFO] [stdout]      |                                ^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]     --> src/types.rs:273:1
[INFO] [stdout]      |
[INFO] [stdout]  273 | pub enum PrivacyLevel {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 465 others
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1871:12
[INFO] [stdout]      |
[INFO] [stdout] 1869 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1870 |     where
[INFO] [stdout] 1871 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-19202b42be5b4654.long-type-15053212017986768066.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `&types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub funding_source: FundingSource,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `max_wait_time` on type `&types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub max_wait_time: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `privacy_requirements` on type `&types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub privacy_requirements: PrivacyLevel,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `funding_source`
[INFO] [stdout]    --> src/types.rs:214:5
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub funding_source: FundingSource,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `max_wait_time`
[INFO] [stdout]    --> src/types.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub max_wait_time: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `privacy_requirements`
[INFO] [stdout]    --> src/types.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub privacy_requirements: PrivacyLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 257 |      { exchange: _, withdrawal_address: _ }Cex(CexFundingRequest),
[INFO] [stdout]     |      ++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 258 |      { service: _, mix_id: _ }Mixer(MixerFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 259 |      { source_chain: _, bridge_used: _ }CrossChain(CrossChainFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 257 |      { exchange: _, withdrawal_address: _ }Cex(CexFundingRequest),
[INFO] [stdout]     |      ++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 258 |      { service: _, mix_id: _ }Mixer(MixerFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 259 |      { source_chain: _, bridge_used: _ }CrossChain(CrossChainFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `types::PrivacyLevel: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/types.rs:102:35
[INFO] [stdout]     |
[INFO] [stdout] 102 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                                   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `types::PrivacyLevel`
[INFO] [stdout]    --> src/types.rs:273:1
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub enum PrivacyLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `types::PrivacyLevel` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]               `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]             and 465 others
[INFO] [stdout] note: required by a bound in `types::_::_serde::__private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/private/de.rs:25:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  24 | where
[INFO] [stdout]  25 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-19202b42be5b4654.long-type-15053212017986768066.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/types.rs:280:10
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/types.rs:283:5
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 283 |     Normal,
[INFO] [stdout]     |     ^^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/types.rs:280:17
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/generator/mod.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/generator/mod.rs:103:39
[INFO] [stdout]     |
[INFO] [stdout] 103 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:421:39
[INFO] [stdout]     |
[INFO] [stdout] 421 |             .map_err(|e| WalletError::HealthCheck(format!("Binance ping failed: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `funding_source` on type `&types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub funding_source: FundingSource,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `max_wait_time` on type `&types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub max_wait_time: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `privacy_requirements` on type `&types::FundingRequest`
[INFO] [stdout]    --> src/types.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub privacy_requirements: PrivacyLevel,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `wallet_id`, `amount`, `chain_id`, `source`, `priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `funding_source`
[INFO] [stdout]    --> src/types.rs:214:5
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub funding_source: FundingSource,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `max_wait_time`
[INFO] [stdout]    --> src/types.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub max_wait_time: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `privacy_requirements`
[INFO] [stdout]    --> src/types.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub privacy_requirements: PrivacyLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:426:30
[INFO] [stdout]     |
[INFO] [stdout] 426 |             Err(WalletError::HealthCheck("Binance API not responding".to_string()))
[INFO] [stdout]     |                              ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 257 |      { exchange: _, withdrawal_address: _ }Cex(CexFundingRequest),
[INFO] [stdout]     |      ++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 258 |      { service: _, mix_id: _ }Mixer(MixerFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/types.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 259 |      { source_chain: _, bridge_used: _ }CrossChain(CrossChainFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 257 |      { exchange: _, withdrawal_address: _ }Cex(CexFundingRequest),
[INFO] [stdout]     |      ++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 258 |      { service: _, mix_id: _ }Mixer(MixerFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 259 |      { source_chain: _, bridge_used: _ }CrossChain(CrossChainFundingRequest),
[INFO] [stdout]     |      +++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0533]: expected value, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/types.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ not a value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/types.rs:280:10
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |          ^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/types.rs:283:5
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 283 |     Normal,
[INFO] [stdout]     |     ^^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/types.rs:280:17
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 280 | #[derive(Debug, Clone)]
[INFO] [stdout]     |                 ^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/generator/mod.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `KeyGeneration` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/generator/mod.rs:103:39
[INFO] [stdout]     |
[INFO] [stdout] 103 |             .map_err(|e| WalletError::KeyGeneration(e.to_string()))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `KeyGeneration` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:421:39
[INFO] [stdout]     |
[INFO] [stdout] 421 |             .map_err(|e| WalletError::HealthCheck(format!("Binance ping failed: {}", e)))?;
[INFO] [stdout]     |                                       ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `HealthCheck` found for enum `error::WalletError` in the current scope
[INFO] [stdout]    --> src/funding/cex.rs:426:30
[INFO] [stdout]     |
[INFO] [stdout] 426 |             Err(WalletError::HealthCheck("Binance API not responding".to_string()))
[INFO] [stdout]     |                              ^^^^^^^^^^^ variant, associated function, or constant not found in `error::WalletError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/error.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub enum WalletError {
[INFO] [stdout]     | -------------------- variant, associated function, or constant `HealthCheck` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/mod.rs:137:21
[INFO] [stdout]     |
[INFO] [stdout] 137 |                     FundingSource::Cex(_) => "CEX",
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 137 -                     FundingSource::Cex(_) => "CEX",
[INFO] [stdout] 137 +                     FundingSource::Cex { exchange: _, withdrawal_address: _ } => "CEX",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/funding/mod.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |                     FundingSource::Mixer(_) => "Mixer",
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 138 -                     FundingSource::Mixer(_) => "Mixer",
[INFO] [stdout] 138 +                     FundingSource::Mixer { service: _, mix_id: _ } => "Mixer",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/funding/mod.rs:139:21
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     FundingSource::CrossChain(_) => "CrossChain",
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 139 -                     FundingSource::CrossChain(_) => "CrossChain",
[INFO] [stdout] 139 +                     FundingSource::CrossChain { source_chain: _, bridge_used: _ } => "CrossChain",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `funding_source`
[INFO] [stdout]    --> src/funding/mod.rs:496:13
[INFO] [stdout]     |
[INFO] [stdout] 496 |             funding_source: FundingSource::Manual,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `Normal` found for enum `types::FundingPriority` in the current scope
[INFO] [stdout]    --> src/funding/mod.rs:497:40
[INFO] [stdout]     |
[INFO] [stdout] 497 |             priority: FundingPriority::Normal,
[INFO] [stdout]     |                                        ^^^^^^ variant, associated function, or constant not found in `types::FundingPriority`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/types.rs:86:1
[INFO] [stdout]     |
[INFO] [stdout]  86 | pub enum FundingPriority {
[INFO] [stdout]     | ------------------------ variant, associated function, or constant `Normal` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `max_wait_time`
[INFO] [stdout]    --> src/funding/mod.rs:498:13
[INFO] [stdout]     |
[INFO] [stdout] 498 |             max_wait_time: 3600,
[INFO] [stdout]     |             ^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `types::FundingRequest` has no field named `privacy_requirements`
[INFO] [stdout]    --> src/funding/mod.rs:499:13
[INFO] [stdout]     |
[INFO] [stdout] 499 |             privacy_requirements: PrivacyLevel::Medium,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ `types::FundingRequest` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `zeroize_or_on_drop` exists for mutable reference `&mut DateTime<Utc>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> src/security/encryption.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Debug, Clone, ZeroizeOnDrop)]
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ method cannot be called on `&mut DateTime<Utc>` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/chrono-0.4.41/src/datetime/mod.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct DateTime<Tz: TimeZone> {
[INFO] [stdout]    | --------------------------------- doesn't satisfy `DateTime<Utc>: ZeroizeOnDrop`, `DateTime<Utc>: Zeroize` or `DateTime<Utc>: zeroize::__internal::AssertZeroize`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `DateTime<Utc>: Zeroize`
[INFO] [stdout]            which is required by `DateTime<Utc>: zeroize::__internal::AssertZeroize`
[INFO] [stdout]            `DateTime<Utc>: ZeroizeOnDrop`
[INFO] [stdout]            which is required by `&&mut DateTime<Utc>: zeroize::__internal::AssertZeroizeOnDrop`
[INFO] [stdout]            `&mut DateTime<Utc>: Zeroize`
[INFO] [stdout]            which is required by `&mut DateTime<Utc>: zeroize::__internal::AssertZeroize`
[INFO] [stdout]    = note: this error originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/security/encryption.rs:400:24
[INFO] [stdout]      |
[INFO] [stdout]  400 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]      |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]  401 | struct KeyBackup {
[INFO] [stdout]  402 |     keys: Vec<EncryptionKey>,
[INFO] [stdout]      |     ------------------------ required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Serialize` is not implemented for `EncryptionKey`
[INFO] [stdout]     --> src/security/encryption.rs:25:1
[INFO] [stdout]      |
[INFO] [stdout]   25 | pub struct EncryptionKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Serialize)]` to your `EncryptionKey` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 450 others
[INFO] [stdout]      = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Serialize`
[INFO] [stdout] note: required by a bound in `types::_::_serde::ser::SerializeStruct::serialize_field`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/ser/mod.rs:1866:21
[INFO] [stdout]      |
[INFO] [stdout] 1864 |     fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error>
[INFO] [stdout]      |        --------------- required by a bound in this associated function
[INFO] [stdout] 1865 |     where
[INFO] [stdout] 1866 |         T: ?Sized + Serialize;
[INFO] [stdout]      |                     ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field`
[INFO] [stdout]      = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/security/encryption.rs:402:11
[INFO] [stdout]      |
[INFO] [stdout]  402 |     keys: Vec<EncryptionKey>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `EncryptionKey`
[INFO] [stdout]     --> src/security/encryption.rs:25:1
[INFO] [stdout]      |
[INFO] [stdout]   25 | pub struct EncryptionKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `EncryptionKey` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 455 others
[INFO] [stdout]      = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1732:12
[INFO] [stdout]      |
[INFO] [stdout] 1730 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1731 |     where
[INFO] [stdout] 1732 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-e088be95fdc7a36c.long-type-264490329377666834.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/security/encryption.rs:402:11
[INFO] [stdout]      |
[INFO] [stdout]  402 |     keys: Vec<EncryptionKey>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `EncryptionKey`
[INFO] [stdout]     --> src/security/encryption.rs:25:1
[INFO] [stdout]      |
[INFO] [stdout]   25 | pub struct EncryptionKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `EncryptionKey` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 455 others
[INFO] [stdout]      = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1871:12
[INFO] [stdout]      |
[INFO] [stdout] 1869 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1870 |     where
[INFO] [stdout] 1871 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-e088be95fdc7a36c.long-type-264490329377666834.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/security/encryption.rs:400:35
[INFO] [stdout]     |
[INFO] [stdout] 400 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                                   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `EncryptionKey`
[INFO] [stdout]    --> src/security/encryption.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout]  25 | pub struct EncryptionKey {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `EncryptionKey` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]               `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]             and 455 others
[INFO] [stdout]     = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `types::_::_serde::__private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/private/de.rs:25:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  24 | where
[INFO] [stdout]  25 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-e088be95fdc7a36c.long-type-264490329377666834.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 5 arguments but 4 arguments were supplied
[INFO] [stdout]   --> src/activity/test.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 |           let simulator = ActivitySimulator::new(
[INFO] [stdout]    |  _________________________^^^^^^^^^^^^^^^^^^^^^^-
[INFO] [stdout] 11 | |             "http://localhost:8545".to_string(), // Replace with Reth or Infura RPC
[INFO] [stdout] 12 | |             "0x...private_key...".to_string(),   // Replace with test key
[INFO] [stdout] 13 | |             None,
[INFO] [stdout] 14 | |             None,
[INFO] [stdout] 15 | |         ).unwrap();
[INFO] [stdout]    | |_________- argument #5 of type `Vec<std::string::String>` is missing
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> src/activity/simulator.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |         proxies: Vec<String>,
[INFO] [stdout]    |         --------------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]    |
[INFO] [stdout] 10 ~         let simulator = ActivitySimulator::new(
[INFO] [stdout] 11 +             "http://localhost:8545".to_string(),
[INFO] [stdout] 12 +             "0x...private_key...".to_string(),
[INFO] [stdout] 13 +             None,
[INFO] [stdout] 14 +             None,
[INFO] [stdout] 15 +             /* Vec<std::string::String> */,
[INFO] [stdout] 16 ~         ).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 5 arguments but 4 arguments were supplied
[INFO] [stdout]   --> src/activity/test.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 |           let simulator = ActivitySimulator::new(
[INFO] [stdout]    |  _________________________^^^^^^^^^^^^^^^^^^^^^^-
[INFO] [stdout] 25 | |             "http://localhost:8545".to_string(),
[INFO] [stdout] 26 | |             "0x...private_key...".to_string(),
[INFO] [stdout] 27 | |             Some("discord_test_key".to_string()),
[INFO] [stdout] 28 | |             Some("twitter_test_key".to_string()),
[INFO] [stdout] 29 | |         ).unwrap();
[INFO] [stdout]    | |_________- argument #5 of type `Vec<std::string::String>` is missing
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> src/activity/simulator.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |         proxies: Vec<String>,
[INFO] [stdout]    |         --------------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let simulator = ActivitySimulator::new(
[INFO] [stdout] ...
[INFO] [stdout] 28 |             Some("twitter_test_key".to_string()),
[INFO] [stdout] 29 ~             /* Vec<std::string::String> */,
[INFO] [stdout] 30 ~         ).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `WalletGenerator: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Clone)]
[INFO] [stdout]    |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 26 |     generator: generator::WalletGenerator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `WalletGenerator`
[INFO] [stdout]    |
[INFO] [stdout] help: consider annotating `WalletGenerator` with `#[derive(Clone)]`
[INFO] [stdout]   --> src/generator/mod.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 + #[derive(Clone)]
[INFO] [stdout] 12 | pub struct WalletGenerator {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `funding::FundingManager: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Clone)]
[INFO] [stdout]    |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 27 |     funding: funding::FundingManager,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Clone` is not implemented for `funding::FundingManager`
[INFO] [stdout]   --> src/funding/mod.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct FundingManager {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Cex`
[INFO] [stdout]    --> src/funding/mod.rs:137:21
[INFO] [stdout]     |
[INFO] [stdout] 137 |                     FundingSource::Cex(_) => "CEX",
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 137 -                     FundingSource::Cex(_) => "CEX",
[INFO] [stdout] 137 +                     FundingSource::Cex { exchange: _, withdrawal_address: _ } => "CEX",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::Mixer`
[INFO] [stdout]    --> src/funding/mod.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |                     FundingSource::Mixer(_) => "Mixer",
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 138 -                     FundingSource::Mixer(_) => "Mixer",
[INFO] [stdout] 138 +                     FundingSource::Mixer { service: _, mix_id: _ } => "Mixer",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0164]: expected tuple struct or tuple variant, found struct variant `FundingSource::CrossChain`
[INFO] [stdout]    --> src/funding/mod.rs:139:21
[INFO] [stdout]     |
[INFO] [stdout] 139 |                     FundingSource::CrossChain(_) => "CrossChain",
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a tuple struct or tuple variant
[INFO] [stdout]     |
[INFO] [stdout] help: the struct variant's fields are being ignored
[INFO] [stdout]     |
[INFO] [stdout] 139 -                     FundingSource::CrossChain(_) => "CrossChain",
[INFO] [stdout] 139 +                     FundingSource::CrossChain { source_chain: _, bridge_used: _ } => "CrossChain",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `zeroize_or_on_drop` exists for mutable reference `&mut DateTime<Utc>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> src/security/encryption.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Debug, Clone, ZeroizeOnDrop)]
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ method cannot be called on `&mut DateTime<Utc>` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/chrono-0.4.41/src/datetime/mod.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct DateTime<Tz: TimeZone> {
[INFO] [stdout]    | --------------------------------- doesn't satisfy `DateTime<Utc>: ZeroizeOnDrop`, `DateTime<Utc>: Zeroize` or `DateTime<Utc>: zeroize::__internal::AssertZeroize`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `DateTime<Utc>: Zeroize`
[INFO] [stdout]            which is required by `DateTime<Utc>: zeroize::__internal::AssertZeroize`
[INFO] [stdout]            `DateTime<Utc>: ZeroizeOnDrop`
[INFO] [stdout]            which is required by `&&mut DateTime<Utc>: zeroize::__internal::AssertZeroizeOnDrop`
[INFO] [stdout]            `&mut DateTime<Utc>: Zeroize`
[INFO] [stdout]            which is required by `&mut DateTime<Utc>: zeroize::__internal::AssertZeroize`
[INFO] [stdout]    = note: this error originates in the derive macro `ZeroizeOnDrop` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/security/encryption.rs:400:24
[INFO] [stdout]      |
[INFO] [stdout]  400 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]      |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]  401 | struct KeyBackup {
[INFO] [stdout]  402 |     keys: Vec<EncryptionKey>,
[INFO] [stdout]      |     ------------------------ required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Serialize` is not implemented for `EncryptionKey`
[INFO] [stdout]     --> src/security/encryption.rs:25:1
[INFO] [stdout]      |
[INFO] [stdout]   25 | pub struct EncryptionKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Serialize)]` to your `EncryptionKey` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 450 others
[INFO] [stdout]      = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Serialize`
[INFO] [stdout] note: required by a bound in `types::_::_serde::ser::SerializeStruct::serialize_field`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/ser/mod.rs:1866:21
[INFO] [stdout]      |
[INFO] [stdout] 1864 |     fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error>
[INFO] [stdout]      |        --------------- required by a bound in this associated function
[INFO] [stdout] 1865 |     where
[INFO] [stdout] 1866 |         T: ?Sized + Serialize;
[INFO] [stdout]      |                     ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field`
[INFO] [stdout]      = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/security/encryption.rs:402:11
[INFO] [stdout]      |
[INFO] [stdout]  402 |     keys: Vec<EncryptionKey>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `EncryptionKey`
[INFO] [stdout]     --> src/security/encryption.rs:25:1
[INFO] [stdout]      |
[INFO] [stdout]   25 | pub struct EncryptionKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `EncryptionKey` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 455 others
[INFO] [stdout]      = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1732:12
[INFO] [stdout]      |
[INFO] [stdout] 1730 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1731 |     where
[INFO] [stdout] 1732 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-19202b42be5b4654.long-type-11135343557974792772.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/security/encryption.rs:402:11
[INFO] [stdout]      |
[INFO] [stdout]  402 |     keys: Vec<EncryptionKey>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `EncryptionKey`
[INFO] [stdout]     --> src/security/encryption.rs:25:1
[INFO] [stdout]      |
[INFO] [stdout]   25 | pub struct EncryptionKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `EncryptionKey` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]                `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]                `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]              and 455 others
[INFO] [stdout]      = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/de/mod.rs:1871:12
[INFO] [stdout]      |
[INFO] [stdout] 1869 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1870 |     where
[INFO] [stdout] 1871 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-19202b42be5b4654.long-type-11135343557974792772.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `EncryptionKey: types::_::_serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/security/encryption.rs:400:35
[INFO] [stdout]     |
[INFO] [stdout] 400 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]     |                                   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `types::_::_serde::Deserialize<'_>` is not implemented for `EncryptionKey`
[INFO] [stdout]    --> src/security/encryption.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout]  25 | pub struct EncryptionKey {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `EncryptionKey` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `types::_::_serde::Deserialize<'de>`:
[INFO] [stdout]               `&'a Path` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a RawValue` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a [u8]` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `&'a str` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `()` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T,)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]               `(T0, T1, T2)` implements `types::_::_serde::Deserialize<'de>`
[INFO] [stdout]             and 455 others
[INFO] [stdout]     = note: required for `Vec<EncryptionKey>` to implement `types::_::_serde::Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `types::_::_serde::__private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.219/src/private/de.rs:25:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  24 | where
[INFO] [stdout]  25 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wallet_manager-19202b42be5b4654.long-type-11135343557974792772.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `WalletGenerator: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Clone)]
[INFO] [stdout]    |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 26 |     generator: generator::WalletGenerator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `WalletGenerator`
[INFO] [stdout]    |
[INFO] [stdout] help: consider annotating `WalletGenerator` with `#[derive(Clone)]`
[INFO] [stdout]   --> src/generator/mod.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 + #[derive(Clone)]
[INFO] [stdout] 12 | pub struct WalletGenerator {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FundingManager: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Clone)]
[INFO] [stdout]    |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 27 |     funding: funding::FundingManager,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Clone` is not implemented for `FundingManager`
[INFO] [stdout]   --> src/funding/mod.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct FundingManager {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `balances`
[INFO] [stdout]    --> src/funding/cex.rs:400:13
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let balances: serde_json::Value = response.json().await
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_balances`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:387:33
[INFO] [stdout]     |
[INFO] [stdout] 387 |     async fn get_balance(&self, currency: &str) -> Result<f64, WalletError> {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:407:43
[INFO] [stdout]     |
[INFO] [stdout] 407 |     async fn get_withdrawal_limits(&self, currency: &str) -> Result<WithdrawalLimits, WalletError> {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `balances`
[INFO] [stdout]    --> src/funding/cex.rs:400:13
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let balances: serde_json::Value = response.json().await
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_balances`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:387:33
[INFO] [stdout]     |
[INFO] [stdout] 387 |     async fn get_balance(&self, currency: &str) -> Result<f64, WalletError> {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:407:43
[INFO] [stdout]     |
[INFO] [stdout] 407 |     async fn get_withdrawal_limits(&self, currency: &str) -> Result<WithdrawalLimits, WalletError> {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/funding/cex.rs:450:37
[INFO] [stdout]     |
[INFO] [stdout] 450 |     async fn withdraw_direct(&self, request: WithdrawalRequest) -> Result<WithdrawalResult, WalletError> {
[INFO] [stdout]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/funding/cex.rs:450:37
[INFO] [stdout]     |
[INFO] [stdout] 450 |     async fn withdraw_direct(&self, request: WithdrawalRequest) -> Result<WithdrawalResult, WalletError> {
[INFO] [stdout]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:470:33
[INFO] [stdout]     |
[INFO] [stdout] 470 |     async fn get_balance(&self, currency: &str) -> Result<f64, WalletError> {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:474:43
[INFO] [stdout]     |
[INFO] [stdout] 474 |     async fn get_withdrawal_limits(&self, currency: &str) -> Result<WithdrawalLimits, WalletError> {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:470:33
[INFO] [stdout]     |
[INFO] [stdout] 470 |     async fn get_balance(&self, currency: &str) -> Result<f64, WalletError> {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/funding/cex.rs:511:37
[INFO] [stdout]     |
[INFO] [stdout] 511 |     async fn withdraw_direct(&self, request: WithdrawalRequest) -> Result<WithdrawalResult, WalletError> {
[INFO] [stdout]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:474:43
[INFO] [stdout]     |
[INFO] [stdout] 474 |     async fn get_withdrawal_limits(&self, currency: &str) -> Result<WithdrawalLimits, WalletError> {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:531:33
[INFO] [stdout]     |
[INFO] [stdout] 531 |     async fn get_balance(&self, currency: &str) -> Result<f64, WalletError> {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:535:43
[INFO] [stdout]     |
[INFO] [stdout] 535 |     async fn get_withdrawal_limits(&self, currency: &str) -> Result<WithdrawalLimits, WalletError> {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/funding/cex.rs:511:37
[INFO] [stdout]     |
[INFO] [stdout] 511 |     async fn withdraw_direct(&self, request: WithdrawalRequest) -> Result<WithdrawalResult, WalletError> {
[INFO] [stdout]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:363:37
[INFO] [stdout]     |
[INFO] [stdout] 363 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:420:37
[INFO] [stdout]     |
[INFO] [stdout] 420 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:477:37
[INFO] [stdout]     |
[INFO] [stdout] 477 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:531:33
[INFO] [stdout]     |
[INFO] [stdout] 531 |     async fn get_balance(&self, currency: &str) -> Result<f64, WalletError> {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `currency`
[INFO] [stdout]    --> src/funding/cex.rs:535:43
[INFO] [stdout]     |
[INFO] [stdout] 535 |     async fn get_withdrawal_limits(&self, currency: &str) -> Result<WithdrawalLimits, WalletError> {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:533:37
[INFO] [stdout]     |
[INFO] [stdout] 533 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:363:37
[INFO] [stdout]     |
[INFO] [stdout] 363 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_chain`
[INFO] [stdout]    --> src/funding/cross_chain.rs:582:40
[INFO] [stdout]     |
[INFO] [stdout] 582 |     async fn is_route_supported(&self, source_chain: u64, target_chain: u64) -> bool {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_chain`
[INFO] [stdout]    --> src/funding/cross_chain.rs:582:59
[INFO] [stdout]     |
[INFO] [stdout] 582 |     async fn is_route_supported(&self, source_chain: u64, target_chain: u64) -> bool {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:587:37
[INFO] [stdout]     |
[INFO] [stdout] 587 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:420:37
[INFO] [stdout]     |
[INFO] [stdout] 420 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/funding/mod.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let chain_id = request.chain_id;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/funding/mod.rs:280:40
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn schedule_funding(&mut self, request: FundingRequest, execute_at: chrono::DateTime<chrono::Utc>) -> Result<Uuid, WalletEr...
[INFO] [stdout]     |                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `execute_at`
[INFO] [stdout]    --> src/funding/mod.rs:280:65
[INFO] [stdout]     |
[INFO] [stdout] 280 | ...uest: FundingRequest, execute_at: chrono::DateTime<chrono::Utc>) -> Result<Uuid, WalletError> {
[INFO] [stdout]     |                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_execute_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `schedule_id`
[INFO] [stdout]    --> src/funding/mod.rs:290:48
[INFO] [stdout]     |
[INFO] [stdout] 290 |     pub fn cancel_scheduled_funding(&mut self, schedule_id: Uuid) -> Result<(), WalletError> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_schedule_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/balance/manager.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |         address: &str,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/balance/manager.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         chain_id: u64
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/balance/manager.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         address: &str,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_address`
[INFO] [stdout]    --> src/balance/manager.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 |         token_address: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/balance/manager.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |         chain_id: u64
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `threshold`
[INFO] [stdout]    --> src/balance/manager.rs:250:9
[INFO] [stdout]     |
[INFO] [stdout] 250 |         threshold: f64,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_threshold`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/balance/manager.rs:253:13
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let current = self.get_balance(wallet_id, chain_id).await?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_id`
[INFO] [stdout]    --> src/balance/manager.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         wallet_id: Uuid,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/balance/manager.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |         chain_id: u64,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `days`
[INFO] [stdout]    --> src/balance/manager.rs:311:9
[INFO] [stdout]     |
[INFO] [stdout] 311 |         days: u32,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_days`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_ids`
[INFO] [stdout]    --> src/balance/manager.rs:321:9
[INFO] [stdout]     |
[INFO] [stdout] 321 |         wallet_ids: Vec<Uuid>,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_ids`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0509]: cannot move out of type `SecureString`, which implements the `Drop` trait
[INFO] [stdout]    --> src/security/encryption.rs:434:9
[INFO] [stdout]     |
[INFO] [stdout] 434 |         self.inner
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         cannot move out of here
[INFO] [stdout]     |         move occurs because `self.inner` has type `std::string::String`, which does not implement the `Copy` trait
[INFO] [stdout]     |
[INFO] [stdout] help: consider cloning the value if the performance cost is acceptable
[INFO] [stdout]     |
[INFO] [stdout] 434 |         self.inner.clone()
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:477:37
[INFO] [stdout]     |
[INFO] [stdout] 477 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:203:58
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 .filter(|record| matches!(record.status, TransferStatus::Completed))
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:286:45
[INFO] [stdout]     |
[INFO] [stdout] 286 |         if matches!(transfer_record.status, TransferStatus::Pending) {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0063, E0119, E0164, E0277, E0308, E0422, E0425, E0428, E0433...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0063`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `wallet-manager` (lib) due to 188 previous errors; 39 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:533:37
[INFO] [stdout]     |
[INFO] [stdout] 533 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_chain`
[INFO] [stdout]    --> src/funding/cross_chain.rs:582:40
[INFO] [stdout]     |
[INFO] [stdout] 582 |     async fn is_route_supported(&self, source_chain: u64, target_chain: u64) -> bool {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_chain`
[INFO] [stdout]    --> src/funding/cross_chain.rs:582:59
[INFO] [stdout]     |
[INFO] [stdout] 582 |     async fn is_route_supported(&self, source_chain: u64, target_chain: u64) -> bool {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_id`
[INFO] [stdout]    --> src/funding/cross_chain.rs:587:37
[INFO] [stdout]     |
[INFO] [stdout] 587 |     async fn cancel_transfer(&self, transfer_id: Uuid) -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/funding/mod.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let chain_id = request.chain_id;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/funding/mod.rs:280:40
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn schedule_funding(&mut self, request: FundingRequest, execute_at: chrono::DateTime<chrono::Utc>) -> Result<Uuid, WalletEr...
[INFO] [stdout]     |                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `execute_at`
[INFO] [stdout]    --> src/funding/mod.rs:280:65
[INFO] [stdout]     |
[INFO] [stdout] 280 | ...uest: FundingRequest, execute_at: chrono::DateTime<chrono::Utc>) -> Result<Uuid, WalletError> {
[INFO] [stdout]     |                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_execute_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `schedule_id`
[INFO] [stdout]    --> src/funding/mod.rs:290:48
[INFO] [stdout]     |
[INFO] [stdout] 290 |     pub fn cancel_scheduled_funding(&mut self, schedule_id: Uuid) -> Result<(), WalletError> {
[INFO] [stdout]     |                                                ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_schedule_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/balance/manager.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |         address: &str,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/balance/manager.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         chain_id: u64
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]    --> src/balance/manager.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         address: &str,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_address`
[INFO] [stdout]    --> src/balance/manager.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 |         token_address: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/balance/manager.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |         chain_id: u64
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `threshold`
[INFO] [stdout]    --> src/balance/manager.rs:250:9
[INFO] [stdout]     |
[INFO] [stdout] 250 |         threshold: f64,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_threshold`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/balance/manager.rs:253:13
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let current = self.get_balance(wallet_id, chain_id).await?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_id`
[INFO] [stdout]    --> src/balance/manager.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         wallet_id: Uuid,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain_id`
[INFO] [stdout]    --> src/balance/manager.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |         chain_id: u64,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chain_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `days`
[INFO] [stdout]    --> src/balance/manager.rs:311:9
[INFO] [stdout]     |
[INFO] [stdout] 311 |         days: u32,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_days`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_ids`
[INFO] [stdout]    --> src/balance/manager.rs:321:9
[INFO] [stdout]     |
[INFO] [stdout] 321 |         wallet_ids: Vec<Uuid>,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_ids`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0509]: cannot move out of type `SecureString`, which implements the `Drop` trait
[INFO] [stdout]    --> src/security/encryption.rs:434:9
[INFO] [stdout]     |
[INFO] [stdout] 434 |         self.inner
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         cannot move out of here
[INFO] [stdout]     |         move occurs because `self.inner` has type `std::string::String`, which does not implement the `Copy` trait
[INFO] [stdout]     |
[INFO] [stdout] help: consider cloning the value if the performance cost is acceptable
[INFO] [stdout]     |
[INFO] [stdout] 434 |         self.inner.clone()
[INFO] [stdout]     |                   ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:203:58
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 .filter(|record| matches!(record.status, TransferStatus::Completed))
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TransferStatus` in this scope
[INFO] [stdout]    --> src/funding/cross_chain.rs:286:45
[INFO] [stdout]     |
[INFO] [stdout] 286 |         if matches!(transfer_record.status, TransferStatus::Pending) {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^ use of undeclared type `TransferStatus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0063, E0119, E0164, E0277, E0308, E0422, E0425, E0428...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `wallet-manager` (lib test) due to 197 previous errors; 41 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015", kill_on_drop: false }`
[INFO] [stdout] 7c6f2de5eb6c8a30859a72b9b27ba754f7c926944678f4a7ed740b4527ccb015
